@@ -45,7 +45,6 @@ public class ortoo_FabricatedSObjectRegister {
4545
4646 sobjectsByFabricated .put ( thisFabricatedObject , objectToStore );
4747 }
48- system .debug ( sobjectsByFabricated .values () );
4948
5049 // work out the order to do things in, using the directed graph
5150 List <Object > childToParentTypes = graph .generateSorted ();
@@ -102,21 +101,19 @@ public class ortoo_FabricatedSObjectRegister {
102101 Sobject parentSobject = sobjectsByFabricated .get ( parent );
103102 Sobject childSobject = sobjectsByFabricated .get ( child );
104103
105- system .debug ( ' registering the relationship: ' + childSobject + ' : ' + relationship + ' : ' + parentSobject );
106-
107104 uow .registerRelationship ( childSobject , relationship , parentSobject );
108105 }
109106 }
110107
111108 public static Relationship buildChildOfRelationship ( sfab_FabricatedSObject child , String relationship , sfab_FabricatedSObject parent )
112109 {
113- // TODO: resolve the passed in relationship
114- return new Relationship ( child , Contact . AccountId , parent );
110+ SobjectField relationshipField = new sfab_ObjectDescriber (). getFieldForParentRelationship ( child . getSobjectName (), relationship );
111+ return new Relationship ( child , relationshipField , parent );
115112 }
116113
117114 public static Relationship buildParentOfRelationship ( sfab_FabricatedSObject parent , String relationship , sfab_FabricatedSObject child )
118115 {
119- // TODO: resolve the passed in relationship
120- return new Relationship ( child , Contact . AccountId , parent );
116+ SobjectField relationshipField = new sfab_ObjectDescriber (). getFieldForChildRelationship ( parent . getSobjectName (), relationship );
117+ return new Relationship ( child , relationshipField , parent );
121118 }
122119}
0 commit comments