|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.rapidminer.operator.Operator
com.rapidminer.operator.CommandLineOperator
public class CommandLineOperator
This operator executes a system command. The command and all its arguments
are specified by the parameter command. The standard output
stream and the error stream of the process can be redirected to the logfile.
Please note also that the command is system dependent. Characters that have
special meaning on the shell like e.g. the pipe symbol or brackets and braces
do not have a special meaning to Java.
The method
Runtime.exec(String) is used to execute the command. Please
note, that this (Java) method parses the string into tokens before it is
executed. These tokens are not interpreted by a shell (which?). If
the desired command involves piping, redirection or other shell features, it
is best to create a small shell script to handle this.
A hint for Windows / MS DOS users: simple commands should be preceeded by
cmd call which opens a new shell, executes the command and closes
the shell again. After this, the rest of the process will be executed.
Another option would be to preceed the command with cmd start
which opens the shell and keeps it open. The rest process will not be
executed until the shell is closed by the user.
| Field Summary | |
|---|---|
static java.lang.String |
PARAMETER_COMMAND
|
static java.lang.String |
PARAMETER_LOG_STDERR
|
static java.lang.String |
PARAMETER_LOG_STDOUT
|
| Constructor Summary | |
|---|---|
CommandLineOperator(OperatorDescription description)
|
|
| Method Summary | |
|---|---|
IOObject[] |
apply()
Implement this method in subclasses. |
java.lang.Class<?>[] |
getInputClasses()
Returns the classes that are needed as input. |
java.lang.Class<?>[] |
getOutputClasses()
Returns the classes that are guaranteed to be returned by apply() as additional output. |
java.util.List<ParameterType> |
getParameterTypes()
Returns a list of ParameterTypes describing the parameters of this operator. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String PARAMETER_COMMAND
public static final java.lang.String PARAMETER_LOG_STDOUT
public static final java.lang.String PARAMETER_LOG_STDERR
| Constructor Detail |
|---|
public CommandLineOperator(OperatorDescription description)
| Method Detail |
|---|
public IOObject[] apply()
throws OperatorException
Operator
apply in class OperatorOperatorExceptionpublic java.lang.Class<?>[] getInputClasses()
OperatorOperator.getOutputClasses() and
Operator.apply() if this is necessary. This default behavior can be
changed by overriding Operator.getInputDescription(Class). Subclasses
which implement this method should not make use of parameters since this
method is invoked by getParameterTypes(). Therefore, parameters are not
fully available at this point of time and this might lead to exceptions.
Please use InputDescriptions instead.
getInputClasses in class Operatorpublic java.lang.Class<?>[] getOutputClasses()
OperatorReturns the classes that are guaranteed to be returned by
apply() as additional output. Please note that input objects
which should not be consumed must also be defined by this method (e.g.
an example set which is changed but not consumed in the case of a preprocessing
operator must be defined in both, the methods Operator.getInputClasses() and
Operator.getOutputClasses()). The default behavior for input consumation
is defined by Operator.getInputDescription(Class) and can be changed by
overwriting this method. Objects which are not consumed (defined by changing
the implementation in Operator.getInputDescription(Class)) must not be
defined as additional output in this method.
May deliver null or an empy array (no additional output is produced or guaranteed). Must return the class array of delivered output objects otherwise.
getOutputClasses in class Operatorpublic java.util.List<ParameterType> getParameterTypes()
Operator
getParameterTypes in interface ParameterHandlergetParameterTypes in class Operator
|
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||