Loading plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/scoping/TDLScopeProvider.java +16 −6 Original line number Diff line number Diff line package org.etsi.mts.tdl.scoping; import java.util.stream.Collectors; import java.util.HashSet; import java.util.Set; import org.eclipse.emf.common.util.BasicEList; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.xtext.EcoreUtil2; import org.eclipse.xtext.naming.IQualifiedNameConverter; import org.eclipse.xtext.naming.QualifiedName; Loading @@ -20,15 +20,15 @@ import org.etsi.mts.tdl.ActionReference; import org.etsi.mts.tdl.Assignment; import org.etsi.mts.tdl.Behaviour; import org.etsi.mts.tdl.Block; import org.etsi.mts.tdl.CollectionDataType; import org.etsi.mts.tdl.ComponentInstance; import org.etsi.mts.tdl.ComponentInstanceBinding; import org.etsi.mts.tdl.Connection; import org.etsi.mts.tdl.DataElementMapping; import org.etsi.mts.tdl.DataElementUse; import org.etsi.mts.tdl.DataInstance; import org.etsi.mts.tdl.DataInstanceUse; import org.etsi.mts.tdl.DataType; import org.etsi.mts.tdl.CollectionDataType; import org.etsi.mts.tdl.CollectionDataInstance; import org.etsi.mts.tdl.DataUse; import org.etsi.mts.tdl.Element; import org.etsi.mts.tdl.ElementImport; Loading @@ -45,7 +45,6 @@ import org.etsi.mts.tdl.MappableDataElement; import org.etsi.mts.tdl.MemberAssignment; import org.etsi.mts.tdl.MemberReference; import org.etsi.mts.tdl.Message; import org.etsi.mts.tdl.DataElementUse; import org.etsi.mts.tdl.NamedElement; import org.etsi.mts.tdl.Package; import org.etsi.mts.tdl.PackageableElement; Loading @@ -55,13 +54,14 @@ import org.etsi.mts.tdl.ParameterMapping; import org.etsi.mts.tdl.ProcedureCall; import org.etsi.mts.tdl.ProcedureSignature; import org.etsi.mts.tdl.SimpleDataInstance; import org.etsi.mts.tdl.SimpleDataType; import org.etsi.mts.tdl.StructuredDataInstance; import org.etsi.mts.tdl.StructuredDataType; import org.etsi.mts.tdl.Target; import org.etsi.mts.tdl.TestConfiguration; import org.etsi.mts.tdl.TestDescription; import org.etsi.mts.tdl.TestDescriptionReference; import org.etsi.mts.tdl.TimeLabel; import org.etsi.mts.tdl.TimeLabelUse; import org.etsi.mts.tdl.Timer; import org.etsi.mts.tdl.TimerOperation; import org.etsi.mts.tdl.ValueAssignment; Loading Loading @@ -485,6 +485,16 @@ public class TDLScopeProvider extends AbstractDeclarativeScopeProvider { IScope scope = Scopes.scopeFor(((ProcedureCall)context.eContainer().eContainer()).getSignature().getParameter()); return scope; } } else if (context instanceof TimeLabelUse) { TestDescription testDescription = ((Element) context).getParentTestDescription(); Set<TimeLabel> labels = new HashSet<TimeLabel>(); testDescription.eAllContents().forEachRemaining(e -> { if (e instanceof TimeLabel) labels.add((TimeLabel) e); }); IScope scope = Scopes.scopeFor(labels); return scope; } else if (reference.getEType().getInstanceClass() == Variable.class) { //DONE: handle with new super class? -> no longer needed! (clean up) // if (context instanceof Assignment) { Loading Loading
plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/scoping/TDLScopeProvider.java +16 −6 Original line number Diff line number Diff line package org.etsi.mts.tdl.scoping; import java.util.stream.Collectors; import java.util.HashSet; import java.util.Set; import org.eclipse.emf.common.util.BasicEList; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.xtext.EcoreUtil2; import org.eclipse.xtext.naming.IQualifiedNameConverter; import org.eclipse.xtext.naming.QualifiedName; Loading @@ -20,15 +20,15 @@ import org.etsi.mts.tdl.ActionReference; import org.etsi.mts.tdl.Assignment; import org.etsi.mts.tdl.Behaviour; import org.etsi.mts.tdl.Block; import org.etsi.mts.tdl.CollectionDataType; import org.etsi.mts.tdl.ComponentInstance; import org.etsi.mts.tdl.ComponentInstanceBinding; import org.etsi.mts.tdl.Connection; import org.etsi.mts.tdl.DataElementMapping; import org.etsi.mts.tdl.DataElementUse; import org.etsi.mts.tdl.DataInstance; import org.etsi.mts.tdl.DataInstanceUse; import org.etsi.mts.tdl.DataType; import org.etsi.mts.tdl.CollectionDataType; import org.etsi.mts.tdl.CollectionDataInstance; import org.etsi.mts.tdl.DataUse; import org.etsi.mts.tdl.Element; import org.etsi.mts.tdl.ElementImport; Loading @@ -45,7 +45,6 @@ import org.etsi.mts.tdl.MappableDataElement; import org.etsi.mts.tdl.MemberAssignment; import org.etsi.mts.tdl.MemberReference; import org.etsi.mts.tdl.Message; import org.etsi.mts.tdl.DataElementUse; import org.etsi.mts.tdl.NamedElement; import org.etsi.mts.tdl.Package; import org.etsi.mts.tdl.PackageableElement; Loading @@ -55,13 +54,14 @@ import org.etsi.mts.tdl.ParameterMapping; import org.etsi.mts.tdl.ProcedureCall; import org.etsi.mts.tdl.ProcedureSignature; import org.etsi.mts.tdl.SimpleDataInstance; import org.etsi.mts.tdl.SimpleDataType; import org.etsi.mts.tdl.StructuredDataInstance; import org.etsi.mts.tdl.StructuredDataType; import org.etsi.mts.tdl.Target; import org.etsi.mts.tdl.TestConfiguration; import org.etsi.mts.tdl.TestDescription; import org.etsi.mts.tdl.TestDescriptionReference; import org.etsi.mts.tdl.TimeLabel; import org.etsi.mts.tdl.TimeLabelUse; import org.etsi.mts.tdl.Timer; import org.etsi.mts.tdl.TimerOperation; import org.etsi.mts.tdl.ValueAssignment; Loading Loading @@ -485,6 +485,16 @@ public class TDLScopeProvider extends AbstractDeclarativeScopeProvider { IScope scope = Scopes.scopeFor(((ProcedureCall)context.eContainer().eContainer()).getSignature().getParameter()); return scope; } } else if (context instanceof TimeLabelUse) { TestDescription testDescription = ((Element) context).getParentTestDescription(); Set<TimeLabel> labels = new HashSet<TimeLabel>(); testDescription.eAllContents().forEachRemaining(e -> { if (e instanceof TimeLabel) labels.add((TimeLabel) e); }); IScope scope = Scopes.scopeFor(labels); return scope; } else if (reference.getEType().getInstanceClass() == Variable.class) { //DONE: handle with new super class? -> no longer needed! (clean up) // if (context instanceof Assignment) { Loading