Search in sources :

Example 1 with AbstractPackage

use of org.obeonetwork.dsl.cinematic.AbstractPackage in project InformationSystem by ObeoNetwork.

the class CinematicEcoreServices method getAbstractPackageContainer.

/**
 * Return the abstractPackage container.
 * @param context the AbstractPackage
 * @return the container
 */
public AbstractPackage getAbstractPackageContainer(AbstractPackage context) {
    EObject container = context.eContainer();
    AbstractPackage abstractPackageToReturn = null;
    while (container.eContainer() != null && !(context.eContainer() instanceof AbstractPackage)) {
        container = container.eContainer();
    }
    if (container instanceof AbstractPackage) {
        abstractPackageToReturn = (AbstractPackage) container;
    }
    return abstractPackageToReturn;
}
Also used : AbstractPackage(org.obeonetwork.dsl.cinematic.AbstractPackage) EObject(org.eclipse.emf.ecore.EObject)

Example 2 with AbstractPackage

use of org.obeonetwork.dsl.cinematic.AbstractPackage in project InformationSystem by ObeoNetwork.

the class FlowsUtil method getFlowsWithName.

public static List<Flow> getFlowsWithName(EObject context, String name) {
    List<Flow> flows = new ArrayList<Flow>();
    if (name == null || name.trim().equals("")) {
        return flows;
    }
    Collection<EObject> roots = CinematicEcoreServices.getAllRootsForCinematic(context);
    for (EObject root : roots) {
        for (TreeIterator<EObject> it = root.eAllContents(); it.hasNext(); ) {
            EObject current = it.next();
            if (current instanceof Flow) {
                Flow flow = (Flow) current;
                if (name.equalsIgnoreCase(flow.getName())) {
                    flows.add(flow);
                }
            } else if (current instanceof AbstractPackage == false) {
                it.prune();
            }
        }
    }
    return flows;
}
Also used : AbstractPackage(org.obeonetwork.dsl.cinematic.AbstractPackage) EObject(org.eclipse.emf.ecore.EObject) ArrayList(java.util.ArrayList) Flow(org.obeonetwork.dsl.cinematic.flow.Flow)

Aggregations

EObject (org.eclipse.emf.ecore.EObject)2 AbstractPackage (org.obeonetwork.dsl.cinematic.AbstractPackage)2 ArrayList (java.util.ArrayList)1 Flow (org.obeonetwork.dsl.cinematic.flow.Flow)1