public static AssociationIF makeAssociation( TopicIF aType, TopicIF[] rTypes, TopicIF[] players, Collection<TopicIF> scope) { TopicMapBuilderIF builder = aType.getTopicMap().getBuilder(); AssociationIF assoc = builder.makeAssociation(aType); for (int i=0; i < rTypes.length; i++) { builder.makeAssociationRole(assoc, rTypes[i], players[i]); } return assoc; }
@Override public void startAssociation(ValueGeneratorIF type) { association = builder.makeAssociation(type.getTopic()); scoped = association; }
private static void addAssociation2(LocatorIF atypePSI, TopicIF player1, LocatorIF rtype1PSI, TopicIF player2, LocatorIF rtype2PSI, TopicMapIF tm) throws MalformedURLException { TopicMapBuilderIF tmbuilder = tm.getBuilder(); AssociationIF assoc = tmbuilder.makeAssociation(topicByPSI(atypePSI, tm)); tmbuilder.makeAssociationRole(assoc, topicByPSI(rtype1PSI, tm), player1); tmbuilder.makeAssociationRole(assoc, topicByPSI(rtype2PSI, tm), player2); }
public void testAssociation() { AssociationIF assoc = builder.makeAssociation(builder.makeTopic()); testScoped(assoc); testTMObject(assoc); }
protected static void assignField(TopicMapIF topicmap, LocatorIF base_on, TopicIF oField, TopicIF ptype) { TopicMapBuilderIF builder = topicmap.getBuilder(); // TopicIF cardinality = getTopic(topicmap, base_on, "cardinality-0-1"); // NOTE: fixed // on:has-field(%new-field-assignment% : on:field-assignment, %new-role-field% : on:field-definition) AssociationIF a2 = builder.makeAssociation(getTopic(topicmap, base_on, "has-field")); builder.makeAssociationRole(a2, getTopic(topicmap, base_on, "field-owner"), ptype); builder.makeAssociationRole(a2, getTopic(topicmap, base_on, "field-definition"), oField); }
public void testAssociationsByType() { TopicIF type = builder.makeTopic(); assertTrue("associations by non-existent type initially not empty", topic.getAssociationsByType(type).size() == 0); builder.makeAssociation(type, builder.makeTopic(), topic); assertTrue("associations of correct type not found", topic.getAssociationsByType(type).size() == 1); builder.makeAssociation(builder.makeTopic(), builder.makeTopic(), topic); assertTrue("associations with with incorrect type found", topic.getAssociationsByType(type).size() == 1); }
private static void addAssociation1(LocatorIF atypePSI, TopicIF player1, LocatorIF rtype1PSI, TopicMapIF tm) throws MalformedURLException { TopicMapBuilderIF tmbuilder = tm.getBuilder(); AssociationIF assoc = tmbuilder.makeAssociation(topicByPSI(atypePSI, tm)); tmbuilder.makeAssociationRole(assoc, topicByPSI(rtype1PSI, tm), player1); }
protected static TopicIF defineIdentityField(TopicMapIF topicmap, LocatorIF base_on, TopicIF itype, TopicIF cardinality) { TopicMapBuilderIF builder = topicmap.getBuilder(); TopicIF iField = builder.makeTopic(getTopic(topicmap, base_on, "identity-field")); AssociationIF hasOccurrenceType = builder.makeAssociation(getTopic(topicmap, base_on, "has-identity-type")); builder.makeAssociationRole(hasOccurrenceType, getTopic(topicmap, base_on, "identity-type"), itype); builder.makeAssociationRole(hasOccurrenceType, getTopic(topicmap, base_on, "identity-field"), iField); AssociationIF hasCardinality = builder.makeAssociation(getTopic(topicmap, base_on, "has-cardinality")); builder.makeAssociationRole(hasCardinality, getTopic(topicmap, base_on, "field-definition"), iField); builder.makeAssociationRole(hasCardinality, getTopic(topicmap, base_on, "cardinality"), cardinality); return iField; }
protected static TopicIF defineIdentityField(TopicMapIF topicmap, LocatorIF base_on, TopicIF itype, TopicIF cardinality) { TopicMapBuilderIF builder = topicmap.getBuilder(); TopicIF iField = builder.makeTopic(getTopic(topicmap, base_on, "identity-field")); AssociationIF hasOccurrenceType = builder.makeAssociation(getTopic(topicmap, base_on, "has-identity-type")); builder.makeAssociationRole(hasOccurrenceType, getTopic(topicmap, base_on, "identity-type"), itype); builder.makeAssociationRole(hasOccurrenceType, getTopic(topicmap, base_on, "identity-field"), iField); AssociationIF hasCardinality = builder.makeAssociation(getTopic(topicmap, base_on, "has-cardinality")); builder.makeAssociationRole(hasCardinality, getTopic(topicmap, base_on, "field-definition"), iField); builder.makeAssociationRole(hasCardinality, getTopic(topicmap, base_on, "cardinality"), cardinality); return iField; }
protected static void assignEditMode(TopicMapIF topicmap, LocatorIF base_on, TopicIF rfield, String mode) { TopicMapBuilderIF builder = topicmap.getBuilder(); AssociationIF isEmbedded = builder.makeAssociation(getTopic(topicmap, base_on, "use-edit-mode")); builder.makeAssociationRole(isEmbedded, getTopic(topicmap, base_on, "field-definition"), rfield); builder.makeAssociationRole(isEmbedded, getTopic(topicmap, base_on, "edit-mode"), getTopic(topicmap, base_on, mode)); }
protected static void assignFieldsView(TopicMapIF topicmap, LocatorIF base_on, TopicIF fieldDefinition, String view) { TopicMapBuilderIF builder = topicmap.getBuilder(); TopicIF fieldsView = getTopic(topicmap, base_on, view); AssociationIF fieldInView = builder.makeAssociation(getTopic(topicmap, base_on, "field-in-view")); builder.makeAssociationRole(fieldInView, getTopic(topicmap, base_on, "field-definition"), fieldDefinition); builder.makeAssociationRole(fieldInView, getTopic(topicmap, base_on, "fields-view"), fieldsView); }
protected static void assignViewMode(TopicMapIF topicmap, LocatorIF base_on, TopicIF rfield, String view, String mode) { TopicMapBuilderIF builder = topicmap.getBuilder(); AssociationIF viewMode = builder.makeAssociation(getTopic(topicmap, base_on, "use-view-mode")); builder.makeAssociationRole(viewMode, getTopic(topicmap, base_on, "field-definition"), rfield); builder.makeAssociationRole(viewMode, getTopic(topicmap, base_on, "fields-view"), getTopic(topicmap, base_on, view)); builder.makeAssociationRole(viewMode, getTopic(topicmap, base_on, "view-mode"), getTopic(topicmap, base_on, mode)); }
protected static void assignValueView(TopicMapIF topicmap, LocatorIF base_on, TopicIF rfield, String pview, String cview) { TopicMapBuilderIF builder = topicmap.getBuilder(); AssociationIF valueView = builder.makeAssociation(getTopic(topicmap, base_on, "use-value-view")); builder.makeAssociationRole(valueView, getTopic(topicmap, base_on, "field-definition"), rfield); builder.makeAssociationRole(valueView, getTopic(topicmap, base_on, "parent-view"), getTopic(topicmap, base_on, pview)); builder.makeAssociationRole(valueView, getTopic(topicmap, base_on, "child-view"), getTopic(topicmap, base_on, cview)); }
@Override protected TMObjectIF makeObject() { AssociationIF assoc = builder.makeAssociation(builder.makeTopic()); return builder.makeAssociationRole(assoc, builder.makeTopic(), builder.makeTopic()); }
public void testBug510_R() { assertEquals("Index finds spurious roles", 0, clsix.getAssociationRoles(null).size()); builder.makeAssociationRole(builder.makeAssociation(type), type, type); assertEquals("Index finds spurious roles", 0, clsix.getAssociationRoles(null).size()); }
public void testGetRoleTypeCount() { assertEquals(0, stats.getRoleTypeCount()); TopicIF t = builder.makeTopic(); builder.makeAssociationRole(builder.makeAssociation(t), t, t); assertEquals(1, stats.getRoleTypeCount()); }
public void testGetRoleCount() { assertEquals(0, stats.getRoleCount()); TopicIF t = builder.makeTopic(); builder.makeAssociationRole(builder.makeAssociation(t), t, t); assertEquals(1, stats.getRoleCount()); }
public void testAssocRoleGenerate() { AssociationIF assoc = builder.makeAssociation(builder.makeTopic()); AssociationRoleIF role = builder.makeAssociationRole(assoc, builder.makeTopic(), builder.makeTopic()); DocumentIF doc = generator.generate(role); Collection fields = doc.getFields(); assertTrue("Association role DocumentIF has " + fields.size() + " fields", fields.size() == 2); verifyObjectId(role, doc.getField("object_id")); verifyClass(doc.getField("class"), "R"); }
public void testTopicRemovalPolicyRole() { TopicIF topic = builder.makeTopic(); TopicIF other = builder.makeTopic(); AssociationIF assoc = builder.makeAssociation(builder.makeTopic()); AssociationRoleIF role1 = builder.makeAssociationRole(assoc, builder.makeTopic(), topic); AssociationRoleIF role2 = builder.makeAssociationRole(assoc, builder.makeTopic(), other); topic.remove(); assertTrue("association not deleted", assoc.getTopicMap() == null); assertTrue("role1 not deleted", role1.getTopicMap() == null); assertTrue("role2 not deleted", role2.getTopicMap() == null); assertTrue("remaining topic has roles left", other.getRoles().size() == 0); }
@Test public void testAssociation() throws Exception { AssociationIF assoc = tm1.getBuilder().makeAssociation(foo1); tm1.getBuilder().makeAssociationRole(assoc, tm1.getBuilder().makeTopic(), tm1.getBuilder().makeTopic()); assoc.setReifier(foo1); // todo: assoc.addTheme(foo1); pending #265 concurrentCommit(); // verify no inconsistenties were created check(tm1, assoc.getType(), "Association", "type"); check(tm1, assoc.getReifier(), "Association", "reifier"); // todo: check(tm1, assoc.getScope().iterator().next().getObjectId(), "Association", "scope"); pending #265 }