Commit 5730e61f authored by Daniel Honsel's avatar Daniel Honsel
Browse files

made ConfigTools singleton

parent 4b740f7f
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -68,17 +68,17 @@ import org.eclipse.xtext.nodemodel.util.NodeModelUtils
import org.eclipse.xtext.nodemodel.INode

class TTCN3Validator extends AbstractTTCN3Validator {
	val private String configurationClassName = typeof(T3QConfig).name;
	val private String configurationProfileClassName = typeof(QualityCheckProfile).name;
	val private String configurationFilename = "config/test.t3q";
	val ConfigTools configTools;
	val ConfigTools configTools = ConfigTools.getInstance;
	var QualityCheckProfile activeProfile = null;

	new() {
		configTools = new ConfigTools(configurationClassName, configurationProfileClassName);
		configTools.loadConfig(configurationFilename);
		if (configTools.selectedProfile != null) {
			activeProfile = configTools.selectedProfile as QualityCheckProfile;
		} else {
			activeProfile = configTools.selectProfile("defaultProfile") as QualityCheckProfile;
		}
	}

	@Check
	def checkModuleName(TTCN3Module module) {
+17 −1
Original line number Diff line number Diff line
@@ -10,16 +10,27 @@ import java.util.ArrayList;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.converters.ConversionException;

import de.ugoe.cs.swe.TTCN3Configuration.QualityCheckProfile;
import de.ugoe.cs.swe.TTCN3Configuration.T3QConfig;
import de.ugoe.cs.swe.common.exceptions.TerminationException;

//TODO: restructuring config tools

public class ConfigTools {

	private static ConfigTools instance = new ConfigTools(T3QConfig.class.getName(), QualityCheckProfile.class.getName());;

	public static ConfigTools getInstance() {
		return instance;
	}

	private ToolConfiguration config = null;
	private String configurationClassName;
	private String configurationProfileClassName;
	private String toolVersion;
	private ConfigurationProfile selectedProfile = null;

	public ConfigTools(String configurationClassName, String configurationProfileClassName) {
	private ConfigTools(String configurationClassName, String configurationProfileClassName) {
		this.configurationClassName = configurationClassName;
		this.configurationProfileClassName = configurationProfileClassName;
	}
@@ -166,6 +177,11 @@ public class ConfigTools {
			selectedProfile = allEnabledProfile;
		}
		
		this.selectedProfile = selectedProfile;
		return selectedProfile;
	}

	public ConfigurationProfile getSelectedProfile() {
		return selectedProfile;
	}