Package org.apache.jmeter.protocol.system

# Class SystemSampler

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.samplers.AbstractSampler
org.apache.jmeter.protocol.system.SystemSampler

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `ConfigMergabilityIndicator`, `Searchable`, `Sampler`, `org.apache.jmeter.testelement.TestElement`

public class SystemSampler extends AbstractSampler
A sampler for executing a System function.

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface org.apache.jmeter.testelement.TestElement

  `org.apache.jmeter.testelement.TestElement.Companion`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `ARGUMENTS`
  `static final String`
  `CHECK_RETURN_CODE`
  `static final String`
  `COMMAND`
  `static final int`
  `DEFAULT_RETURN_CODE`
  `static final String`
  `DIRECTORY`
  `static final String`
  `ENVIRONMENT`
  `static final String`
  `EXPECTED_RETURN_CODE`

  ### Fields inherited from interface org.apache.jmeter.testelement.TestElement

  `COMMENTS, Companion, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SystemSampler()`
  Create a SystemSampler.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `applies(ConfigTestElement configElement)`
  Does configElement apply to Sampler
  `Arguments`
  `getArguments()`
  Get the arguments (parameters) for the JavaSamplerClient to be executed with.
  `boolean`
  `getCheckReturnCode()`
  `String`
  `getCommand()`
  Gets the Command attribute of the JavaConfig object
  `String`
  `getDirectory()`
  `Arguments`
  `getEnvironmentVariables()`
  Get the env variables
  `int`
  `getExpectedReturnCode()`
  `String`
  `getStderr()`
  `String`
  `getStdin()`
  `String`
  `getStdout()`
  `long`
  `getTimeout()`
  `SampleResult`
  `sample(Entry entry)`
  Performs a test sample.
  `void`
  `setArguments(Arguments args)`
  Set the arguments (parameters) for the JavaSamplerClient to be executed with.
  `void`
  `setCheckReturnCode(boolean checkit)`
  `void`
  `setCommand(String command)`
  Sets the Command attribute of the JavaConfig object
  `void`
  `setDirectory(String directory)`
  Set the working directory to use for system commands
  `void`
  `setEnvironmentVariables(Arguments arguments)`
  `void`
  `setExpectedReturnCode(int code)`
  `void`
  `setStderr(String filename)`
  `void`
  `setStdin(String filename)`
  `void`
  `setStdout(String filename)`
  `void`
  `setTimout(long timeoutMs)`

  ### Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement

  `addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, clone, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty`

  ### Methods inherited from class java.lang.Object

  `finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.apache.jmeter.testelement.TestElement

  `addTestElement, canRemove, clear, clearTestElementChildren, clone, get, get, get, get, get, get, get, get, get, getComment, getName, getOrCreate, getOrCreate, getOrNull, getOrNull, getOrNull, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getPropertyOrNull, getProps, getSchema, getString, getThreadContext, getThreadName, isEnabled, isRunningVersion, isTemporary, propertyIterator, recoverRunningVersion, removed, removeProperty, removeProperty, set, set, set, set, set, set, set, set, set, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse`

- ## Field Details

  - ### COMMAND

    public static final String COMMAND
    See Also:
      - Constant Field Values

  - ### DIRECTORY

    public static final String DIRECTORY
    See Also:
      - Constant Field Values

  - ### ARGUMENTS

    public static final String ARGUMENTS
    See Also:
      - Constant Field Values

  - ### ENVIRONMENT

    public static final String ENVIRONMENT
    See Also:
      - Constant Field Values

  - ### CHECK_RETURN_CODE

    public static final String CHECK_RETURN_CODE
    See Also:
      - Constant Field Values

  - ### EXPECTED_RETURN_CODE

    public static final String EXPECTED_RETURN_CODE
    See Also:
      - Constant Field Values

  - ### DEFAULT_RETURN_CODE

    public static final int DEFAULT_RETURN_CODE
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### SystemSampler

    public SystemSampler()
    Create a SystemSampler.

- ## Method Details

  - ### sample

    public SampleResult sample(Entry entry)
    Performs a test sample.
    Parameters:
      `entry` - the Entry for this sample
    Returns:
      test SampleResult

  - ### applies

    public boolean applies(ConfigTestElement configElement)
    Description copied from class: `AbstractSampler`
    Does configElement apply to Sampler
    Specified by:
      `applies` in interface `ConfigMergabilityIndicator`
    Overrides:
      `applies` in class `AbstractSampler`
    Parameters:
      `configElement` - `ConfigTestElement`
    Returns:
      boolean
    See Also:
      - `AbstractSampler.applies(org.apache.jmeter.config.ConfigTestElement)`

  - ### getDirectory

    public String getDirectory()
    Returns:
      working directory to use for system commands

  - ### setDirectory

    public void setDirectory(String directory)
    Set the working directory to use for system commands
    Parameters:
      `directory` - working directory to use for system commands

  - ### setCommand

    public void setCommand(String command)
    Sets the Command attribute of the JavaConfig object
    Parameters:
      `command` - the new Command value

  - ### getCommand

    public String getCommand()
    Gets the Command attribute of the JavaConfig object
    Returns:
      the Command value

  - ### setArguments

    public void setArguments(Arguments args)
    Set the arguments (parameters) for the JavaSamplerClient to be executed with.
    Parameters:
      `args` - the new arguments. These replace any existing arguments.

  - ### getArguments

    public Arguments getArguments()
    Get the arguments (parameters) for the JavaSamplerClient to be executed with.
    Returns:
      the arguments

  - ### setCheckReturnCode

    public void setCheckReturnCode(boolean checkit)
    Parameters:
      `checkit` - boolean indicates if we check or not return code

  - ### getCheckReturnCode

    public boolean getCheckReturnCode()
    Returns:
      boolean indicating if we check or not return code

  - ### setExpectedReturnCode

    public void setExpectedReturnCode(int code)
    Parameters:
      `code` - expected return code

  - ### getExpectedReturnCode

    public int getExpectedReturnCode()
    Returns:
      expected return code

  - ### setEnvironmentVariables

    public void setEnvironmentVariables(Arguments arguments)
    Parameters:
      `arguments` - Env vars

  - ### getEnvironmentVariables

    public Arguments getEnvironmentVariables()
    Get the env variables
    Returns:
      the arguments

  - ### getStdout

    public String getStdout()

  - ### setStdout

    public void setStdout(String filename)

  - ### getStderr

    public String getStderr()

  - ### setStderr

    public void setStderr(String filename)

  - ### getStdin

    public String getStdin()

  - ### setStdin

    public void setStdin(String filename)

  - ### getTimeout

    public long getTimeout()

  - ### setTimout

    public void setTimout(long timeoutMs)