Skip to main content
summaryrefslogtreecommitdiffstats
blob: 449e55127501fe9132e00d3ca1839359ed734d82 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package org.eclipse.papyrus.uml.modelexplorer.recipetest;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

import org.eclipse.uml2.uml.Dependency;
import org.eclipse.uml2.uml.PackageableElement;
import org.eclipse.uml2.uml.Port;
import org.eclipse.uml2.uml.Property;
import org.eclipse.uml2.uml.Classifier;
import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;

/** get all ports from a classifier */
public class GetAllPorts implements IJavaModelQuery<Classifier, Collection<Property>> {
	public Collection<Property> evaluate(final Classifier context, final ParameterValueList parameterValues)
			throws ModelQueryExecutionException {
		ArrayList<Property> result= new ArrayList<Property>();
		Iterator<Property> iter= context.getAllAttributes().iterator();
		while(iter.hasNext()){
			Property currentElement= iter.next();
			if( currentElement instanceof Port){
				result.add((Port)currentElement);
			}
		}
		return result;
	}
}

Back to the top