示例#1
0
 void storeAssociationDefinition(AssociationDefinitionModel assocDef) {
   try {
     // Note: creating the underlying association is conditional. It exists already for
     // an interactively created association definition. Its ID is already set.
     if (assocDef.getId() == -1) {
       dms.createAssociation(assocDef, null); // clientState=null
     }
     // Note: the assoc def ID is known only after creating the association
     long assocDefId = assocDef.getId();
     // role types
     associateWholeRoleType(assocDefId, assocDef.getWholeRoleTypeUri());
     associatePartRoleType(assocDefId, assocDef.getPartRoleTypeUri());
     // cardinality
     associateWholeCardinality(assocDefId, assocDef.getWholeCardinalityUri());
     associatePartCardinality(assocDefId, assocDef.getPartCardinalityUri());
     //
     storeViewConfig(createConfigurableAssocDef(assocDefId), assocDef.getViewConfigModel());
   } catch (Exception e) {
     throw new RuntimeException(
         "Storing association definition \""
             + assocDef.getUri()
             + "\" of type \""
             + assocDef.getWholeTypeUri()
             + "\" failed",
         e);
   }
 }