Commit 5b7c0a79 authored by Daniel Honsel's avatar Daniel Honsel
Browse files

improved performance

parent c11749a3
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -77,12 +77,12 @@ Workflow {

			// validators for the standalone app according to t3q tools
			// can only be used in standalone app, throws an error in eclipse editor
			//composedCheck = "de.ugoe.cs.swe.validation.NamingConventionsValidator"
			//composedCheck = "de.ugoe.cs.swe.validation.StructureOfDataValidator"
			//composedCheck = "de.ugoe.cs.swe.validation.CodeStyleValidator"
			//composedCheck = "de.ugoe.cs.swe.validation.ModularizationValidator"
			//composedCheck = "de.ugoe.cs.swe.validation.MiscFeatureValidator"
			//composedCheck = "de.ugoe.cs.swe.validation.LogValidator"
			composedCheck = "de.ugoe.cs.swe.validation.NamingConventionsValidator"
			composedCheck = "de.ugoe.cs.swe.validation.StructureOfDataValidator"
			composedCheck = "de.ugoe.cs.swe.validation.CodeStyleValidator"
			composedCheck = "de.ugoe.cs.swe.validation.ModularizationValidator"
			composedCheck = "de.ugoe.cs.swe.validation.MiscFeatureValidator"
			composedCheck = "de.ugoe.cs.swe.validation.LogValidator"

			// name clash validator
			// can currently only be used with the eclipse editor, does not work 
+45 −38
Original line number Diff line number Diff line
@@ -5,10 +5,12 @@ import static java.util.Collections.singletonList;
import java.util.List;

import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.xtext.EcoreUtil2;
import org.eclipse.xtext.naming.IQualifiedNameConverter;
import org.eclipse.xtext.naming.IQualifiedNameProvider;
@@ -144,42 +146,47 @@ public class TTCN3ImportedNamespaceAwareLocalScopeProvider extends ImportedNames
		List<ImportNormalizer> normalizers = Lists.newArrayList();
		List<String> imports = getImports(allDescriptions);
		
		for (IEObjectDescription e : scope.getAllElements()) {
			if (!e.getQualifiedName().getFirstSegment().equals(context.getName())
					&& imports.contains(e.getQualifiedName().getFirstSegment())) {
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getGroupDef(), e.getEClass()))
		if (!imports.isEmpty()) {
			for (Resource r : context.eResource().getResourceSet().getResources()) {
				ISelectable descriptions = getAllDescriptions(r);
				IEObjectDescription module = descriptions.getExportedObjectsByType(TTCN3Package.eINSTANCE.getTTCN3Module()).iterator().next();
				if (imports.contains(((TTCN3Module)module.getEObjectOrProxy()).getName())) {									
					for (IEObjectDescription e : descriptions.getExportedObjects()) {
						if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getGroupDef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), true, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getEnumDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getEnumDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getEnumeration(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getEnumeration(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getComponentDef(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getComponentDef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getPortDef(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getPortDef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getRecordDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getRecordDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSetDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSetDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSubTypeDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSubTypeDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getUnionDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getUnionDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getRecordOfDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getRecordOfDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSetOfDefNamed(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSetOfDefNamed(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSignatureDef(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getSignatureDef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getBaseTemplate(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getBaseTemplate(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getFunctionRef(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getFunctionRef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getAltstepDef(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getAltstepDef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));
				if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getTestcaseDef(), e.getEClass()))
						} else if (EcoreUtil2.isAssignableFrom(TTCN3Package.eINSTANCE.getTestcaseDef(), e.getEClass())) {
							normalizers.add(doCreateImportNormalizer(e.getQualifiedName(), false, ignoreCase));

						}	
					}
				}
			}
		}