Loading de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/validation/ModularizationValidator.xtend +26 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,9 @@ class ModularizationValidator extends AbstractDeclarativeValidator { if (activeProfile.checkTypesAndValuesModuleContainmentCheck && module.name.contains(ModuleContentHelper.TypesAndValuesModuleIDSubstring)) { module.checkModuleContainment(ModuleContentHelper.TypesAndValuesModuleIDSubstring) } else if (activeProfile.checkTemplatesModuleContainmentCheck && module.name.contains(ModuleContentHelper.TemplatesModuleIDSubstring) && module.name.contains(ModuleContentHelper.FunctionsModuleIDSubstring )) { module.checkModuleContainment(ModuleContentHelper.TemplatesModuleIDSubstring, ModuleContentHelper.FunctionsModuleIDSubstring) } else if (activeProfile.checkTemplatesModuleContainmentCheck && module.name.contains(ModuleContentHelper.TemplatesModuleIDSubstring)) { module.checkModuleContainment(ModuleContentHelper.TemplatesModuleIDSubstring) Loading Loading @@ -118,6 +121,29 @@ class ModularizationValidator extends AbstractDeclarativeValidator { } } // Special case for TemplatesAndTestcases modules private def checkModuleContainment(TTCN3Module module, String moduleRestriction1, String moduleRestriction2) { for (d : module.getAllContentsOfType(ModuleDefinition)) { var EObject definition = d.def if (!(moduleHelper.typePermittedInRestrictedModule(moduleRestriction1, definition.eClass) || moduleHelper.typePermittedInRestrictedModule(moduleRestriction2, definition.eClass)) ) { TTCN3StatisticsProvider.getInstance.incrementCountModularization val message = "Definition in " + moduleRestriction1 + " and " + moduleRestriction2 + " module is not of the permissible definition type(s)!" val INode node = NodeModelUtils.getNode(definition) warning( message, null, MessageClass.MODULARIZATION.toString, node.startLine.toString, node.endLine.toString, "7.x, " + MiscTools.getMethodName() ); } } } private def boolean functionStartBehavior(FunctionDef function, TTCN3Module module) { val List<FunctionInstance> list = newArrayList Loading Loading
de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/validation/ModularizationValidator.xtend +26 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,9 @@ class ModularizationValidator extends AbstractDeclarativeValidator { if (activeProfile.checkTypesAndValuesModuleContainmentCheck && module.name.contains(ModuleContentHelper.TypesAndValuesModuleIDSubstring)) { module.checkModuleContainment(ModuleContentHelper.TypesAndValuesModuleIDSubstring) } else if (activeProfile.checkTemplatesModuleContainmentCheck && module.name.contains(ModuleContentHelper.TemplatesModuleIDSubstring) && module.name.contains(ModuleContentHelper.FunctionsModuleIDSubstring )) { module.checkModuleContainment(ModuleContentHelper.TemplatesModuleIDSubstring, ModuleContentHelper.FunctionsModuleIDSubstring) } else if (activeProfile.checkTemplatesModuleContainmentCheck && module.name.contains(ModuleContentHelper.TemplatesModuleIDSubstring)) { module.checkModuleContainment(ModuleContentHelper.TemplatesModuleIDSubstring) Loading Loading @@ -118,6 +121,29 @@ class ModularizationValidator extends AbstractDeclarativeValidator { } } // Special case for TemplatesAndTestcases modules private def checkModuleContainment(TTCN3Module module, String moduleRestriction1, String moduleRestriction2) { for (d : module.getAllContentsOfType(ModuleDefinition)) { var EObject definition = d.def if (!(moduleHelper.typePermittedInRestrictedModule(moduleRestriction1, definition.eClass) || moduleHelper.typePermittedInRestrictedModule(moduleRestriction2, definition.eClass)) ) { TTCN3StatisticsProvider.getInstance.incrementCountModularization val message = "Definition in " + moduleRestriction1 + " and " + moduleRestriction2 + " module is not of the permissible definition type(s)!" val INode node = NodeModelUtils.getNode(definition) warning( message, null, MessageClass.MODULARIZATION.toString, node.startLine.toString, node.endLine.toString, "7.x, " + MiscTools.getMethodName() ); } } } private def boolean functionStartBehavior(FunctionDef function, TTCN3Module module) { val List<FunctionInstance> list = newArrayList Loading