Example usage for javax.xml.registry.infomodel ExternalLink removeAssociation

List of usage examples for javax.xml.registry.infomodel ExternalLink removeAssociation

Introduction

In this page you can find the example usage for javax.xml.registry.infomodel ExternalLink removeAssociation.

Prototype

void removeAssociation(Association association) throws JAXRException;

Source Link

Document

Removes specified Association from this object.

Usage

From source file:it.cnr.icar.eric.client.xml.registry.infomodel.RegistryObjectImpl.java

public void removeExternalLink(ExternalLink extLink) throws JAXRException {
    getExternalLinks();//  w w  w  .  j  a va  2  s. com

    if (externalLinks.contains(extLink)) {
        externalLinks.remove(extLink);

        //Now remove the ExternallyLinks association that has extLink as src and this object as target
        // We make a copy of this.externalLinks to avoid a
        // concurrent modification exception in the removeExternalLinks
        @SuppressWarnings("unchecked")
        Collection<Association> linkAssociations = new ArrayList<Association>(extLink.getAssociations());

        if (linkAssociations != null) {
            Iterator<Association> iter = linkAssociations.iterator();

            while (iter.hasNext()) {
                Association ass = iter.next();

                if (ass.getTargetObject().equals(this)) {
                    if (ass.getAssociationType().getValue()
                            .equalsIgnoreCase(BindingUtility.CANONICAL_ASSOCIATION_TYPE_ID_ExternallyLinks)) {
                        extLink.removeAssociation(ass);
                    }
                }
            }
        }

        //No need to call setModified(true) since RIM modified object is an Assoociation
        //setModified(true);
    }
}