use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project nhin-d by DirectProject.
the class DirectDocuments method getSubmitObjectsRequest.
/**
* Get the metadata represented as a SubmitObjectsRequest object.
*/
public SubmitObjectsRequest getSubmitObjectsRequest() {
RegistryPackageType registryPackageType = submissionSet.generateRegistryPackageType();
ClassificationType classificationType = submissionSet.generateClassificationType();
QName qname = null;
// Generate ExtrinsicObjectType objects for each document
qname = new QName(SubmitObjectsRequestEnum.EXTRINSIC_OBJECT.getNamespaceUri(), SubmitObjectsRequestEnum.EXTRINSIC_OBJECT.getName());
List<JAXBElement<ExtrinsicObjectType>> jaxb_extrinsicObjectTypes = new ArrayList<JAXBElement<ExtrinsicObjectType>>();
for (DirectDocument2 document : documents) {
ExtrinsicObjectType extrinsicObjectType = document.getMetadata().generateExtrinsicObjectType();
JAXBElement<ExtrinsicObjectType> jaxb_extrinsicObjectType = new JAXBElement<ExtrinsicObjectType>(qname, ExtrinsicObjectType.class, extrinsicObjectType);
jaxb_extrinsicObjectTypes.add(jaxb_extrinsicObjectType);
}
// Generate the RegistryPakageType (SubmissionSet) for the group of
// documents
qname = new QName(SubmitObjectsRequestEnum.REGISTRY_PACKAGE.getNamespaceUri(), SubmitObjectsRequestEnum.REGISTRY_PACKAGE.getName());
JAXBElement<RegistryPackageType> jaxb_registryPackageType = new JAXBElement<RegistryPackageType>(qname, RegistryPackageType.class, registryPackageType);
// Generate the ClassificationType object
qname = new QName(SubmitObjectsRequestEnum.CLASSIFICATION.getNamespaceUri(), SubmitObjectsRequestEnum.CLASSIFICATION.getName());
JAXBElement<ClassificationType> jaxb_classificationType = new JAXBElement<ClassificationType>(qname, ClassificationType.class, classificationType);
// Generate AssociationType1 objects for each document
qname = new QName(SubmitObjectsRequestEnum.ASSOCIATION.getNamespaceUri(), SubmitObjectsRequestEnum.ASSOCIATION.getName());
List<JAXBElement<AssociationType1>> jaxb_associationType1s = new ArrayList<JAXBElement<AssociationType1>>();
for (DirectDocument2 document : documents) {
AssociationType1 associationType = submissionSet.generateAssociationType(document.getMetadata().getId(), document.getMetadata().getSubmissionSetStatus());
JAXBElement<AssociationType1> jaxb_AssociationType1 = new JAXBElement<AssociationType1>(qname, AssociationType1.class, associationType);
jaxb_associationType1s.add(jaxb_AssociationType1);
}
SubmitObjectsRequest submitObjectsRequest = new SubmitObjectsRequest();
RegistryObjectListType registryObjectListType = new RegistryObjectListType();
List<JAXBElement<? extends IdentifiableType>> elements = registryObjectListType.getIdentifiable();
elements.addAll(jaxb_extrinsicObjectTypes);
elements.add(jaxb_registryPackageType);
elements.add(jaxb_classificationType);
elements.addAll(jaxb_associationType1s);
submitObjectsRequest.setRegistryObjectList(registryObjectListType);
return submitObjectsRequest;
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project nhin-d by DirectProject.
the class DirectDocuments method setValues.
public void setValues(SubmitObjectsRequest submitObjectsRequest) throws MetadataException {
RegistryObjectListType rol = submitObjectsRequest.getRegistryObjectList();
List<JAXBElement<? extends IdentifiableType>> elements = rol.getIdentifiable();
for (JAXBElement<? extends IdentifiableType> element : elements) {
if (element.getValue() instanceof oasis.names.tc.ebxml_regrep.xsd.rim._3.ExtrinsicObjectType) {
ExtrinsicObjectType eot = (ExtrinsicObjectType) element.getValue();
DirectDocument2 document = new DirectDocument2();
DirectDocument2.Metadata metadata = document.getMetadata();
metadata.setValues(eot);
documents.add(document);
} else if (element.getValue() instanceof oasis.names.tc.ebxml_regrep.xsd.rim._3.RegistryPackageType) {
RegistryPackageType rpt = (RegistryPackageType) element.getValue();
SubmissionSet submissionSet = new SubmissionSet();
submissionSet.setValues(rpt);
this.submissionSet = submissionSet;
} else if (element.getValue() instanceof oasis.names.tc.ebxml_regrep.xsd.rim._3.ClassificationType) {
// Empty in example
}
}
for (JAXBElement<? extends IdentifiableType> element : elements) {
if (element.getValue() instanceof oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1) {
AssociationType1 at = (AssociationType1) element.getValue();
for (SlotType1 slot : at.getSlot()) {
if (SlotType1Enum.SUBMISSION_SET_STATUS.matches(slot.getName())) {
if (slotNotEmpty(slot)) {
getDocumentById(at.getTargetObject()).getMetadata().setSubmissionSetStatus(slot.getName());
}
}
}
}
}
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class RegistryPackageTypeHelper method populateLists.
private void populateLists() {
serviceBindings.clear();
services.clear();
extrinsicObjects.clear();
organizations.clear();
persons.clear();
associations.clear();
if (registryPackageType == null) {
return;
}
if (registryPackageType.isSetRegistryObjectList()) {
RegistryObjectListType registryObjectList = registryPackageType.getRegistryObjectList();
for (JAXBElement<? extends IdentifiableType> identifiableType : registryObjectList.getIdentifiable()) {
RegistryObjectType registryObject = (RegistryObjectType) identifiableType.getValue();
if (registryObject instanceof ExtrinsicObjectType) {
extrinsicObjects.add((ExtrinsicObjectType) registryObject);
} else if (registryObject instanceof ServiceType) {
ServiceType service = (ServiceType) registryObject;
services.add(service);
serviceBindings.addAll(service.getServiceBinding());
} else if (registryObject instanceof OrganizationType) {
organizations.add((OrganizationType) registryObject);
} else if (registryObject instanceof PersonType) {
persons.add((PersonType) registryObject);
} else if (registryObject instanceof AssociationType1) {
associations.add((AssociationType1) registryObject);
}
}
}
}
use of oasis.names.tc.ebxml_regrep.xsd.rim._3.AssociationType1 in project ddf by codice.
the class RegistryPackageWebConverterTest method getFourthAssociation.
private AssociationType1 getFourthAssociation() {
AssociationType1 association = RIM_FACTORY.createAssociationType1();
association.setId("urn:association:4");
association.setAssociationType("RelatedTo");
association.setSourceObject("urn:contact:person2");
association.setTargetObject("urn:content:collection:id1");
return association;
}
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;
}
Aggregations