Search in sources :

Example 1 with SequenceLocationProxy

use of org.vcell.pathway.persistence.BiopaxProxy.SequenceLocationProxy in project vcell by virtualcell.

the class PathwayReaderBiopax3 method addObjectSequenceLocation.

private SequenceLocation addObjectSequenceLocation(Element element) {
    if (element.getChildren().size() == 0) {
        // if there are no children it must be a resource inside another object
        SequenceLocationProxy proxy = new SequenceLocationProxy();
        addAttributes(proxy, element);
        pathwayModel.add(proxy);
        return proxy;
    }
    for (Object child : element.getChildren()) {
        if (child instanceof Element) {
            Element childElement = (Element) child;
            if (childElement.getName().equals("SequenceInterval")) {
                SequenceInterval thingie = addObjectSequenceInterval(childElement);
                pathwayModel.add(thingie);
                return thingie;
            }
        } else if (child instanceof Element) {
            Element childElement = (Element) child;
            if (childElement.getName().equals("SequenceSite")) {
                SequenceSite thingie = addObjectSequenceSite(childElement);
                pathwayModel.add(thingie);
                return thingie;
            }
        }
    }
    SequenceLocation sequenceLocation = new SequenceLocation();
    addAttributes(sequenceLocation, element);
    for (Object child : element.getChildren()) {
        if (child instanceof Element) {
            Element childElement = (Element) child;
            if (!addContentSequenceLocation(sequenceLocation, element, childElement)) {
                showUnexpected(childElement);
            }
        }
    }
    pathwayModel.add(sequenceLocation);
    return sequenceLocation;
}
Also used : Element(org.jdom.Element) SequenceSite(org.vcell.pathway.SequenceSite) SequenceInterval(org.vcell.pathway.SequenceInterval) SequenceLocation(org.vcell.pathway.SequenceLocation) GroupObject(org.vcell.pathway.GroupObject) BioPaxObject(org.vcell.pathway.BioPaxObject) SequenceLocationProxy(org.vcell.pathway.persistence.BiopaxProxy.SequenceLocationProxy)

Aggregations

Element (org.jdom.Element)1 BioPaxObject (org.vcell.pathway.BioPaxObject)1 GroupObject (org.vcell.pathway.GroupObject)1 SequenceInterval (org.vcell.pathway.SequenceInterval)1 SequenceLocation (org.vcell.pathway.SequenceLocation)1 SequenceSite (org.vcell.pathway.SequenceSite)1 SequenceLocationProxy (org.vcell.pathway.persistence.BiopaxProxy.SequenceLocationProxy)1