@@ -83,7 +83,8 @@ export class Converter {
8383
8484 public static build (
8585 document_from : IDataCollection & IDataObject ,
86- resource_dest : IResource | ICollection
86+ resource_dest : IResource | ICollection ,
87+ build_relationships = true
8788 ) {
8889 // instancio los include y los guardo en included arrary
8990 let included_resources : IResourcesByType = { } ;
@@ -94,14 +95,15 @@ export class Converter {
9495 if ( angular . isArray ( document_from . data ) ) {
9596 Converter . _buildCollection ( document_from , < ICollection > resource_dest , included_resources ) ;
9697 } else {
97- Converter . _buildResource ( document_from . data , < IResource > resource_dest , included_resources ) ;
98+ build_relationships ? Converter . _buildResource ( document_from . data , < IResource > resource_dest , included_resources ) : null ;
9899 }
99100 }
100101
101102 private static _buildCollection (
102103 collection_data_from : IDataCollection ,
103104 collection_dest : ICollection ,
104- included_resources : IResourcesByType
105+ included_resources : IResourcesByType ,
106+ build_relationships = true
105107 ) {
106108 // sometime get Cannot set property 'number' of undefined (page)
107109 if ( collection_dest . page && collection_data_from [ 'meta' ] ) {
@@ -117,7 +119,7 @@ export class Converter {
117119 collection_dest [ dataresource . id ] =
118120 Converter . getService ( dataresource . type ) . cachememory . getOrCreateResource ( dataresource . type , dataresource . id ) ;
119121 }
120- Converter . _buildResource ( dataresource , collection_dest [ dataresource . id ] , included_resources ) ;
122+ build_relationships ? Converter . _buildResource ( dataresource , collection_dest [ dataresource . id ] , included_resources ) : null ;
121123 new_ids [ dataresource . id ] = dataresource . id ;
122124 }
123125
@@ -139,6 +141,11 @@ export class Converter {
139141 resource_dest . is_new = false ;
140142 let schema = Converter . getService ( resource_data_from . type ) . schema ;
141143
144+ // esto previene la creación indefinida de resources
145+ if ( ! resource_dest . relationships ) {
146+ return ;
147+ }
148+
142149 let relationships_converter = new ResourceRelationshipsConverter (
143150 Converter . getService ,
144151 resource_data_from . relationships ,
0 commit comments