/******************************************************************************* * Copyright (c) 2004, 2010 BREDEX GmbH. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * BREDEX GmbH - initial API and implementation and/or initial documentation *******************************************************************************/ package org.eclipse.jubula.autagent.commands; import java.io.IOException; import java.util.Map; import org.eclipse.jubula.communication.internal.message.Message; import org.eclipse.jubula.communication.internal.message.StartAUTServerStateMessage; import org.eclipse.jubula.tools.internal.constants.AUTStartResponse; import org.eclipse.jubula.tools.internal.constants.StringConstants; /** * Implementors of this interface start an AUT. * * @author BREDEX GmbH * @created Jul 6, 2007 * */ public interface IStartAut { /** Default error message when the AUT cannot be started */ public static final Message ERROR_MESSAGE = new StartAUTServerStateMessage( AUTStartResponse.ERROR, "Unexpected error, no detail available."); //$NON-NLS-1$ /** <code>RC_DEBUG</code> */ public static final String RC_DEBUG = System.getProperty("RC_DEBUG"); //$NON-NLS-1$ /** <code>PATH_SEPARATOR</code> */ public static final String PATH_SEPARATOR = System.getProperty("path.separator"); //$NON-NLS-1$ /** <code>FILE_SEPARATOR</code> */ public static final String FILE_SEPARATOR = System.getProperty("file.separator"); //$NON-NLS-1$ /** Delimiter for key and value of properties (key=value) */ public static final String PROPERTY_DELIMITER = StringConstants.EQUALS_SIGN; /** Whitespace delimiter */ public static final String WHITESPACE_DELIMITER = StringConstants.SPACE; /** The separator used when composing the classpath in the AUT Configuration */ public static final String CLIENT_PATH_SEPARATOR = StringConstants.SEMICOLON; /** * Starts the AUT with the given parameters. * @param parameters The parameters for starting the AUT. * @return a <code>StartAutServerStateMessage</code> which either describes an error * condition or just tells the originator that the AUT was started correctly. * @throws IOException if an I/O error occurs. */ public StartAUTServerStateMessage startAut(Map<String, String> parameters) throws IOException; }