package org.rubypeople.rdt.launching; import org.rubypeople.rdt.internal.launching.LaunchingPlugin; public interface IRubyLaunchConfigurationConstants { /** * Identifier for the Local Ruby Application launch configuration type (value * <code>"org.rubypeople.rdt.launching.LaunchConfigurationTypeRubyApplication"</code>). */ public static final String ID_RUBY_APPLICATION = LaunchingPlugin.getUniqueIdentifier() + ".LaunchConfigurationTypeRubyApplication"; //$NON-NLS-1$ /** * Identifier for the standard Socket Attaching VM connector (value * <code>"org.rubypeople.rdt.launching.socketAttachConnector"</code>). */ public static final String ID_SOCKET_ATTACH_VM_CONNECTOR = LaunchingPlugin.getUniqueIdentifier() + ".socketAttachConnector"; //$NON-NLS-1$ /** * Status code indicating a launch configuration does not specify a file to launch. */ public static final int ERR_UNSPECIFIED_FILE_NAME = 101; /** * Status code indicating a launch configuration does not specify a VM Install */ public static final int ERR_UNSPECIFIED_VM_INSTALL = 103; /** * Status code indicating a launch configuration's VM install could not be found. */ public static final int ERR_VM_INSTALL_DOES_NOT_EXIST = 105; /** * Status code indicating a VM runner could not be located for the VM install specified by a launch configuration. */ public static final int ERR_VM_RUNNER_DOES_NOT_EXIST = 106; /** * Status code indicating the project associated with a launch configuration is not a Ruby project. */ public static final int ERR_NOT_A_RUBY_PROJECT = 107; /** * Status code indicating the specified working directory does not exist. */ public static final int ERR_WORKING_DIRECTORY_DOES_NOT_EXIST = 108; /** * Status code indicating a launch configuration does not specify a host name value */ public static final int ERR_UNSPECIFIED_HOSTNAME = 109; /** * Status code indicating a launch configuration does not specify a port number value */ public static final int ERR_UNSPECIFIED_PORT = 111; /** * Status code indicating an attempt to connect to a remote VM has failed or an attempt to listen for a remote VM * connecting has failed. */ public static final int ERR_REMOTE_VM_CONNECTION_FAILED = 113; /** * Status code indicating that a free socket was not available to communicate with the VM. */ public static final int ERR_NO_SOCKET_AVAILABLE = 118; /** * Status code indicating that the JDI connector required for a debug launch was not available. */ public static final int ERR_CONNECTOR_NOT_AVAILABLE = 119; /** * Status code indicating that the debugger failed to connect to the VM. */ public static final int ERR_CONNECTION_FAILED = 120; /** * Status code indicating that the project referenced by a launch configuration is closed. * * @since 0.9.0 */ public static final int ERR_PROJECT_CLOSED = 124; /** * Status code indicating an unexpected internal error. */ public static final int ERR_INTERNAL_ERROR = 150; /** * Identifier for the ruby process type, which is annotated on processes created by the local ruby application * launch delegate. (value <code>"ruby"</code>). */ public static final String ID_RUBY_PROCESS_TYPE = "ruby"; //$NON-NLS-1$ /** * Attribute key for VM specific attributes found in the <code>ATTR_VM_INSTALL_TYPE_SPECIFIC_ATTRS_MAP</code>. The * value is a String, indicating the String to use to invoke the Ruby VM. */ public static final String ATTR_RUBY_COMMAND = LaunchingPlugin.getUniqueIdentifier() + ".RUBY_COMMAND"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a name of a Ruby project associated with a Ruby launch * configuration. */ public static final String ATTR_PROJECT_NAME = LaunchingPlugin.getUniqueIdentifier() + ".PROJECT_NAME"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is an identifier of a VM connector, specifying a connector to use * when attaching to a remote VM. */ public static final String ATTR_VM_CONNECTOR = LaunchingPlugin.getUniqueIdentifier() + ".VM_CONNECTOR_ID"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a path identifying the RubyVM used when launching a local VM. * The path is a loadpath container corresponding to the <code>RubyRuntime.RUBY_CONTAINER</code> loadpath container. * <p> * When unspecified the default RubyVM for a launch configuration is used (which is the RubyVM associated with the * project being launched, or the workspace default RubyVM when no project is associated with a configuration). The * default RubyVM loadpath container refers explicitly to the workspace default RubyVM. * </p> * * @since 0.9.0 */ public static final String ATTR_RUBY_CONTAINER_PATH = RubyRuntime.RUBY_CONTAINER; /** * Launch configuration attribute key. The value is a name of a VM install to use when launching a local VM. This * attribute must be qualified by a VM install type, via the <code>ATTR_VM_INSTALL_TYPE</code> attribute. When * unspecified, the default VM is used. * * @deprecated use <code>ATTR_RUBY_CONTAINER_PATH</code> */ public static final String ATTR_VM_INSTALL_NAME = LaunchingPlugin.getUniqueIdentifier() + ".VM_INSTALL_NAME"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is an identifier of a VM install type. Used in conjunction with a * VM install name, to specify the VM to use when launching a local Java application. The associated VM install name * is specified via the attribute <code>ATTR_VM_INSTALL_NAME</code>. * * @deprecated use <code>ATTR_RUBY_CONTAINER_PATH</code> */ public static final String ATTR_VM_INSTALL_TYPE = LaunchingPlugin.getUniqueIdentifier() + ".VM_INSTALL_TYPE_ID"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a string specifying program arguments for a Ruby launch * configuration, as they should appear on the command line. */ public static final String ATTR_PROGRAM_ARGUMENTS = LaunchingPlugin.getUniqueIdentifier() + ".PROGRAM_ARGUMENTS"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a string specifying VM arguments for a Ruby launch * configuration, as they should appear on the command line. */ public static final String ATTR_VM_ARGUMENTS = LaunchingPlugin.getUniqueIdentifier() + ".INTERPRETER_ARGUMENTS"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a string specifying a path to the working directory to use when * launching a local VM. When specified as an absolute path, the path represents a path in the local file system. * When specified as a full path, the path represents a workspace relative path. When unspecified, the working * directory defaults to the project associated with a launch configuration. When no project is associated with a * launch configuration, the working directory is inherited from the current process. */ public static final String ATTR_WORKING_DIRECTORY = LaunchingPlugin.getUniqueIdentifier() + ".WORKING_DIRECTORY"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a Map of attributes specific to a particular VM install type, * used when launching a local Ruby application. The map is passed to a <code>VMRunner</code> via a * <code>VMRunnerConfiguration</code> when launching a VM. The attributes in the map are implementation dependent * and are limited to String keys and values. */ public static final String ATTR_VM_INSTALL_TYPE_SPECIFIC_ATTRS_MAP = LaunchingPlugin.getUniqueIdentifier() + "VM_INSTALL_TYPE_SPECIFIC_ATTRS_MAP"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a fully qualified name of a file to launch. */ public static final String ATTR_FILE_NAME = LaunchingPlugin.getUniqueIdentifier() + ".FILE_NAME"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is an identifier of a loadpath provider extension used to compute * the loadpath for a launch configuration. When unspecified, the default loadpath provider is used - * <code>StandardLoadpathProvider</code>. */ public static final String ATTR_LOADPATH_PROVIDER = LaunchingPlugin.getUniqueIdentifier() + ".LOADPATH_PROVIDER"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a boolean specifying whether a default loadpath should be used * when launching a local Ruby application. When <code>false</code>, a loadpath must be specified via the * <code>ATTR_LOADPATH</code> attribute. When <code>true</code> or unspecified, a loadpath is computed by the * loadpath provider associated with a launch configuration. */ public static final String ATTR_DEFAULT_LOADPATH = LaunchingPlugin.getUniqueIdentifier() + ".USE_DEFAULT_LOAD_PATH"; //$NON-NLS-1$ /** * Launch configuration attribute key. The attribute value is an ordered list of strings which are mementos for * runtime class path entries. When unspecified, a default loadpath is generated by the loadpath provider associated * with a launch configuration (via the <code>ATTR_LOADPATH_PROVIDER</code> attribute). */ public static final String ATTR_LOADPATH = LaunchingPlugin.getUniqueIdentifier() + ".CUSTOM_LOAD_PATH"; //$NON-NLS-1$ public static final String ATTR_IS_SUDO = LaunchingPlugin.getUniqueIdentifier() + ".IS_SUDO"; //$NON-NLS-1$ /** * After we finish the process, do we need to refresh the project's contents? */ public static final String ATTR_REQUIRES_REFRESH = LaunchingPlugin.getUniqueIdentifier() + ".REQUIRES_REFRESH"; //$NON-NLS-1$ /** * Should we force a process console not to open? */ public static final String ATTR_FORCE_NO_CONSOLE = LaunchingPlugin.getUniqueIdentifier() + ".FORCE_NO_CONSOLE"; //$NON-NLS-1$ /** * Aattach the process to a given terminal by it's ID/type */ public static final String ATTR_USE_TERMINAL = LaunchingPlugin.getUniqueIdentifier() + ".USE_TERMINAL"; //$NON-NLS-1$ /** * The command to print out to the terminal command line */ public static final String ATTR_TERMINAL_COMMAND = LaunchingPlugin.getUniqueIdentifier() + ".TERMINAL_COMMAND"; //$NON-NLS-1$ /** * Explanatory text for password dialog that pops. (Password for sudo). */ public static final String ATTR_SUDO_MESSAGE = LaunchingPlugin.getUniqueIdentifier() + ".SUDO_MESSAGE"; //$NON-NLS-1$ /** * Launch configuration attribute key. The value is a map. Keys in the map correspond to arguments names returned by * <code>IVMConnector#getDefaultArguments()</code>. Values are strings corresponding to the values to use when * establishing a connection to a remote VM. */ public static final String ATTR_CONNECT_MAP = LaunchingPlugin.getUniqueIdentifier() + ".CONNECT_MAP"; //$NON-NLS-1$ /** * @since 1.2.0 */ public static final String ID_STANDARD_VM_TYPE = "org.rubypeople.rdt.launching.StandardVMType"; //$NON-NLS-1$ }