11package com .nedap .archie .opt14 ;
22
3+ import com .google .common .base .Strings ;
34import com .nedap .archie .aom .ArchetypeHRID ;
45import com .nedap .archie .aom .ArchetypeSlot ;
56import com .nedap .archie .aom .CArchetypeRoot ;
@@ -28,16 +29,20 @@ public void convert(Template template, OPERATIONALTEMPLATE opt14) {
2829
2930 private CComplexObject convert (CCOMPLEXOBJECT cComplexObject14 ) {
3031 CComplexObject cComplexObject = new CComplexObject ();
31- cComplexObject .setNodeId (cComplexObject14 .getNodeId ());
32- cComplexObject .setRmTypeName (cComplexObject14 .getRmTypeName ());
33- cComplexObject .setOccurrences (BaseTypesConverter .convertMultiplicity (cComplexObject14 .getOccurrences ()));
32+ setObjectBasics (cComplexObject14 , cComplexObject );
3433
3534 for (CATTRIBUTE attribute14 : cComplexObject14 .getAttributes ()) {
3635 cComplexObject .addAttribute (convert (attribute14 ));
3736 }
3837 return cComplexObject ;
3938 }
4039
40+ private void setObjectBasics (COBJECT cComplexObject14 , CObject cComplexObject ) {
41+ cComplexObject .setNodeId (Strings .isNullOrEmpty (cComplexObject14 .getNodeId ()) ? null : cComplexObject14 .getNodeId ());
42+ cComplexObject .setRmTypeName (cComplexObject14 .getRmTypeName ());
43+ cComplexObject .setOccurrences (BaseTypesConverter .convertMultiplicity (cComplexObject14 .getOccurrences ()));
44+ }
45+
4146 private CAttribute convert (CATTRIBUTE attribute14 ) {
4247 CAttribute attribute = new CAttribute ();
4348 attribute .setRmAttributeName (attribute14 .getRmAttributeName ());
@@ -78,10 +83,8 @@ private CObject convert(COBJECT cobject14) {
7883
7984 private CObject convertSlot (ARCHETYPESLOT cobject14 ) {
8085 ArchetypeSlot archetypeSlot = new ArchetypeSlot ();
81- archetypeSlot .setNodeId (cobject14 .getNodeId ());
82- archetypeSlot .setRmTypeName (cobject14 .getRmTypeName ());
86+ setObjectBasics (cobject14 , archetypeSlot );
8387
84- archetypeSlot .setOccurrences (BaseTypesConverter .convertMultiplicity (cobject14 .getOccurrences ()));
8588 //TODO: assertions for include/exclude, should be straightforward
8689 return archetypeSlot ;
8790 }
@@ -98,9 +101,7 @@ private CObject convertRoot(CARCHETYPEROOT cRoot14) {
98101
99102 CArchetypeRoot root = new CArchetypeRoot ();
100103 root .setArchetypeRef (overlay .getArchetypeId ().getFullId ());
101- root .setNodeId (cRoot14 .getNodeId ());
102- root .setOccurrences (BaseTypesConverter .convertMultiplicity (cRoot14 .getOccurrences ()));
103- root .setRmTypeName (cRoot14 .getRmTypeName ());
104+ setObjectBasics (cRoot14 , root );
104105 return root ;
105106 }
106107
0 commit comments