use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class RegistryPackageWebConverterTest method getSecondAssociation.
private AssociationType1 getSecondAssociation() {
AssociationType1 association = RIM_FACTORY.createAssociationType1();
association.setId("urn:association:2");
association.setAssociationType("RelatedTo");
association.setSourceObject("urn:registry:node");
association.setTargetObject("urn:organization:id0");
return association;
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class RegistryPackageWebConverterTest method getFifthAssociation.
private AssociationType1 getFifthAssociation() {
AssociationType1 association = RIM_FACTORY.createAssociationType1();
association.setId("urn:association:5");
association.setAssociationType("RelatedTo");
association.setSourceObject("urn:organization:id1");
association.setTargetObject("urn:service:id0");
return association;
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class RegistryPackageWebConverterTest method getSixthAssociation.
private AssociationType1 getSixthAssociation() {
AssociationType1 association = RIM_FACTORY.createAssociationType1();
association.setId("urn:association:6");
association.setAssociationType("RelatedTo");
association.setSourceObject("urn:organization:id0");
association.setTargetObject("urn:content:collection:id0");
return association;
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class AssociationTypeConverterTest method testBuildAssociation.
@Test
public void testBuildAssociation() throws Exception {
AssociationTypeConverter atBuilder = new AssociationTypeConverter();
Optional<AssociationType1> optionalAssociation = atBuilder.convert(associationMap);
assertThat(optionalAssociation, notNullValue());
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class RegistryPackageConverter method parseRegistryObjectList.
private static void parseRegistryObjectList(RegistryObjectListType registryObjects, MetacardImpl metacard) throws RegistryConversionException {
Map<String, Set<String>> associations = new HashMap<>();
Map<String, RegistryObjectType> registryIds = new HashMap<>();
List<OrganizationType> orgs = new ArrayList<>();
List<PersonType> contacts = new ArrayList<>();
String nodeId = "";
for (JAXBElement identifiable : registryObjects.getIdentifiable()) {
RegistryObjectType registryObject = (RegistryObjectType) identifiable.getValue();
registryIds.put(registryObject.getId(), registryObject);
if (registryObject instanceof ExtrinsicObjectType && RegistryConstants.REGISTRY_NODE_OBJECT_TYPE.equals(registryObject.getObjectType())) {
nodeId = registryObject.getId();
parseNodeExtrinsicObject(registryObject, metacard);
} else if (registryObject instanceof ServiceType && RegistryConstants.REGISTRY_SERVICE_OBJECT_TYPE.equals(registryObject.getObjectType())) {
parseRegistryService((ServiceType) registryObject, metacard);
} else if (registryObject instanceof OrganizationType) {
orgs.add((OrganizationType) registryObject);
} else if (registryObject instanceof PersonType) {
contacts.add((PersonType) registryObject);
} else if (registryObject instanceof AssociationType1) {
AssociationType1 association = (AssociationType1) registryObject;
if (associations.containsKey(association.getSourceObject())) {
associations.get(association.getSourceObject()).add(association.getTargetObject());
} else {
associations.put(association.getSourceObject(), new HashSet<>(Collections.singleton(association.getTargetObject())));
}
}
}
boolean orgFound = false;
boolean contactFound = false;
if (associations.get(nodeId) != null) {
Set<String> nodeAssociations = associations.get(nodeId);
RegistryObjectType ro;
for (String id : nodeAssociations) {
ro = registryIds.get(id);
if (!orgFound && ro != null && ro instanceof OrganizationType) {
parseRegistryOrganization((OrganizationType) ro, metacard);
orgFound = true;
} else if (!contactFound && ro != null && ro instanceof PersonType) {
parseRegistryPerson((PersonType) ro, metacard);
contactFound = true;
}
}
}
if (!orgFound && !orgs.isEmpty()) {
parseRegistryOrganization(orgs.get(0), metacard);
}
if (!contactFound && !contacts.isEmpty()) {
parseRegistryPerson(contacts.get(0), metacard);
}
}
Aggregations