Set<FieldDescriptor> l = new LinkedHashSet<FieldDescriptor>(); l.addAll(getAttributeDescriptors()); l.addAll(getReferenceDescriptors()); l.addAll(getCollectionDescriptors()); boolean firstClass = true;
Set<FieldDescriptor> l = new LinkedHashSet<FieldDescriptor>(); l.addAll(getAttributeDescriptors()); l.addAll(getReferenceDescriptors()); l.addAll(getCollectionDescriptors()); boolean firstClass = true;
public void testCloneReferenceDescriptors() throws Exception { ClassDescriptor cld = testModel .getClassDescriptorByName("org.intermine.model.testmodel.Company"); Set refs = cld.getReferenceDescriptors(); Set copy = ModelMerger.cloneReferenceDescriptors(refs); assertEquals(refs, copy); }
/** * Construct a ClassDescriptor that takes on all the properties of <code>cld</code> * without attaching to a particular Model. * * @param cld the ClassDescriptor to clone * @return cloned ClassDescriptor */ protected static ClassDescriptor cloneClassDescriptor(ClassDescriptor cld) { // supers can't be an empty string String supers = StringUtil.join(cld.getSuperclassNames(), " "); if (supers != null && "".equals(supers)) { supers = null; } return new ClassDescriptor(cld.getName(), supers, cld.isInterface(), cloneAttributeDescriptors(cld.getAttributeDescriptors()), cloneReferenceDescriptors(cld.getReferenceDescriptors()), cloneCollectionDescriptors(cld.getCollectionDescriptors())); }
/** * Construct a ClassDescriptor that takes on all the properties of <code>cld</code> * without attaching to a particular Model. * * @param cld the ClassDescriptor to clone * @return cloned ClassDescriptor */ protected static ClassDescriptor cloneClassDescriptor(ClassDescriptor cld) { // supers can't be an empty string String supers = StringUtil.join(cld.getSuperclassNames(), " "); if (supers != null && "".equals(supers)) { supers = null; } return new ClassDescriptor(cld.getName(), supers, cld.isInterface(), cloneAttributeDescriptors(cld.getAttributeDescriptors()), cloneReferenceDescriptors(cld.getReferenceDescriptors()), cloneCollectionDescriptors(cld.getCollectionDescriptors())); }
ClassDescriptor merge) throws ModelMergerException { Set<ReferenceDescriptor> newSet = new HashSet<ReferenceDescriptor>(); newSet.addAll(cloneReferenceDescriptors(original.getReferenceDescriptors())); for (ReferenceDescriptor merg : merge.getReferenceDescriptors()) {
ClassDescriptor merge) throws ModelMergerException { Set<ReferenceDescriptor> newSet = new HashSet<ReferenceDescriptor>(); newSet.addAll(cloneReferenceDescriptors(original.getReferenceDescriptors())); for (ReferenceDescriptor merg : merge.getReferenceDescriptors()) {
cd.getAttributeDescriptors()); Set<ReferenceDescriptor> rdescs = cloneReferenceDescriptors( cd.getReferenceDescriptors()); Set<String> supers = new HashSet<String>(); findAllSuperclasses(cd, classes, supers);
cd.getAttributeDescriptors()); Set<ReferenceDescriptor> rdescs = cloneReferenceDescriptors( cd.getReferenceDescriptors()); Set<String> supers = new HashSet<String>(); findAllSuperclasses(cd, classes, supers);
public void testMergeReferenceSettingReverseRef() throws Exception { String modelStr = "<class name=\"org.intermine.model.testmodel.Department\" is-interface=\"false\">" + "<reference name=\"company\" referenced-type=\"org.intermine.model.testmodel.Company\"/>" + "</class>"; // add Department.company String addition = "<class name=\"org.intermine.model.testmodel.Department\" is-interface=\"false\">" + "<reference name=\"company\" referenced-type=\"org.intermine.model.testmodel.Company\" reverse-reference=\"dept\"/>" + "</class>"; String expXml = "<class name=\"org.intermine.model.testmodel.Department\" is-interface=\"false\">" + "<reference name=\"company\" referenced-type=\"org.intermine.model.testmodel.Company\" reverse-reference=\"dept\"/>" + "</class>"; ClassDescriptor cld1 = parseClass(modelStr, "org.intermine.model.testmodel"); ClassDescriptor cld2 = parseClass(addition, "org.intermine.model.testmodel"); ClassDescriptor expected = parseClass(expXml, "org.intermine.model.testmodel"); Set result = ModelMerger.mergeReferences(cld1, cld2); assertEquals(expected.getReferenceDescriptors(), result); }
public void testMergeClassReferences() throws Exception { String modelStr = "<class name=\"A\" is-interface=\"false\">" + "<reference name=\"company\" referenced-type=\"A\"/>" + "</class>"; String addition = "<class name=\"A\" is-interface=\"false\">" + "<reference name=\"company\" referenced-type=\"A\"/>" + "</class>"; String expXml = "<class name=\"A\" is-interface=\"false\">" + "<reference name=\"company\" referenced-type=\"A\"/>" + "</class>"; ClassDescriptor cld1 = parseClass(modelStr, ""); ClassDescriptor cld2 = parseClass(addition, ""); ClassDescriptor expected = parseClass(expXml, ""); Set result = ModelMerger.mergeReferences(cld1, cld2); assertEquals(expected.getReferenceDescriptors(), result); }
assertEquals(expected.getReferenceDescriptors(), result);