Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Copyright (c) 2011 Michael Ruflin, Andr´┐Ż Locher, Claudia von Bastian. This file is part of Tatool. Tatool is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Tatool is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with Tatool. If not, see <http://www.gnu.org/licenses/>. /
 
 package ch.tatool.core.module.creator;
 
 import java.io.File;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
 
 
 public class ModuleCreationWorker implements Worker {
 	
 	Logger logger = LoggerFactory.getLogger(ModuleCreationWorker.class);
 
 	private String errorTitle;
 	private String errorText;
 	private Module module;
 	private Messages messages;

Create a module given a configuration file

Parameters:
moduleService
configurationFile
defaultModuleName a name to use for the module if the name property has not been set. If null and not set, this will cause an error to be thrown
 
 	public void createModule(ModuleService moduleServiceUserAccount userAccountFile configurationFileFile moduleDataFileString defaultModuleNameboolean failIfNameExists) {
 		 = null;
 		 = null;
 		 = null;
 		
 		try {
 			Map<StringStringproperties = new HashMap<StringString>();
 			Map<Stringbyte[]> binaryProperties = new HashMap<Stringbyte[]>();
 			Map<StringDataExportermoduleExporters = new HashMap<StringDataExporter>();
 			
 			// load the module from file
 			configuration.loadModuleConfiguration(configurationFilepropertiesbinaryPropertiesmoduleExporters);
 
 			// check whether the configuration specifies a name
 			String moduleName = properties.get(.);
 
 			if (moduleName == null) {
 				if (defaultModuleName != null) {
 					moduleName = defaultModuleName;
 				} else {
 					// fail
 					 = .getString("General.errorMessage.windowTitle.error");
 					 = .getString("General.creator.dataServerCreator.errorMessage.missingModuleName");
 					return;
 				}
 			}			
 
 			// make sure the module name is unique
 			Set<Module.Infomodules = moduleService.getModules(userAccount);
 			boolean uniqueNameFound = false;
 			String proposedName = moduleName;
 
 			int x = 1;
 			outer: do {
 				for (Module.Info info : modules) {
 					String name = info.getName();
 					if (name.equals(proposedName)) {
 						// name already exists
						if (failIfNameExists) {
							 = .getString("General.errorMessage.windowTitle.error");
							 = .getString("General.creator.dataServerCreator.errorMessage.alreadyExists");
							return;
else {
							proposedName = moduleName + " (" + x + ")";
							x++;
							continue outer;
						}
					}
				}
				// name not found - accept
				uniqueNameFound = true;
while (! uniqueNameFound);
			// set the final name 
			properties.put(.proposedName);
			// create the module
			 = moduleService.createModule(userAccount,propertiesbinaryPropertiesmoduleExporters);
			loadModuleData(moduleServicemoduleDataFile);
catch (CreationException ce) {
			 = "Error";
			 = "The following error occurred while trying to open the module file:\n" + ce.errorMessage;
catch (RuntimeException e) {
			 = "Error";
			 = "An unknown error has occurred. Make sure the module file is correct.";
		}
	}

Add module data from tatool online

Parameters:
moduleService
moduleDataFile
	private void loadModuleData(ModuleService moduleServiceFile moduleDataFile) {
		// add module data if available
		if (moduleDataFile != null) {
			List<String[]> moduleData = new ArrayList<String[]>();
			CSVReader reader = null;
			try {
				reader = new CSVReader(new InputStreamReader(new FileInputStream(moduleDataFile),
						"ISO-8859-1"), ';');
catch (FileNotFoundException e) {
			}
			try {
				moduleData = reader.readAll();
catch (IOException e) {
finally {
				try {
					reader.close();
catch (IOException e) {
				}
			}
			// add module data to module
			for (int i = 0; i < moduleData.size(); i++) {
				String[] data = moduleData.get(i);
				String nodeID = "";
				String propertyName = "";
				String propertyValue = "";
				if (data[0] == null) {
					nodeID = "";
else {
					nodeID = data[0];
				}
				if (data[1] == null) {
					propertyName = "";
else {
					propertyName = data[1];
				}
				if (data[2] == null) {
					propertyValue = "";
else {
					propertyValue = data[2];
				}
				StringProperty dataProperty = new StringProperty(propertyName);
				dataProperty.setValue(nodeIDpropertyValue);
			}
			moduleService.saveModule();
		}
	}
	public boolean hasFinished() {
		return  != null;
	}
	public String getErrorTitle() {
		return ;
	}
	public void setErrorTitle(String errorTitle) {
		this. = errorTitle;
	}
	public String getErrorText() {
		return ;
	}
	public void setErrorText(String errorText) {
		this. = errorText;
	}
	public Module getModule() {
		return ;
	}
	public void setModule(Module module) {
		this. = module;
	}
	public void setMessages(Messages messages) {
    	this. = messages;
    }
    
    public Messages getMessages() {
		return ;
	}
New to GrepCode? Check out our FAQ X