Package com.xebialabs.xlrelease.domain

## Class PythonScript

- java.lang.Object
- - com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
  - - com.xebialabs.xlrelease.domain.BaseScript
    - - com.xebialabs.xlrelease.domain.BasePythonScript
      - - com.xebialabs.xlrelease.domain.PythonScript

- All Implemented Interfaces:
    `ConfigurationItem`, `java.io.Serializable`, `java.lang.Comparable<BaseConfigurationItem>`

      @Metadata(versioned=false)
      public class PythonScript
      extends BasePythonScript

  Base class for the configuration of a custom Python task.

  Users subclass this in `synthetic.xml` to configure input parameters and output mappings for their custom script tasks.

  Note: this should be called "PythonScriptDefinition", but was renamed for UX reasons since the type name is exposed to end users.

  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `CUSTOM_SCRIPT_TASK_PROPERTY` |
    `static java.lang.String` | `PYTHON_SCRIPT_ID` |
    `static java.lang.String` | `PYTHON_SCRIPT_PROPERTY` |
    `static java.util.List<java.lang.String>` | `UPDATEABLE_PROPERTIES` |

    - ### Fields inherited from class com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem

      `id, syntheticProperties, type`

    - ### Fields inherited from interface com.xebialabs.deployit.plugin.api.udm.ConfigurationItem

      `SYNTHETIC_PROPERTIES_FIELD, TYPE_FIELD`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `PythonScript()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getAbortScript()` |
    `java.util.Set<java.lang.String>` | `getAllSyntheticPropertyKeys()` |
    `java.lang.String` | `getConfigurationUri()` |
    `CustomScriptTask` | `getCustomScriptTask()` |
    `java.lang.String` | `getIconClass()` |
    `java.lang.String` | `getIconLocation()` |
    `java.util.Collection<PropertyDescriptor>` | `getInputProperties()` |
    `int` | `getMaxOutputPropertySize()` |
    `java.util.Collection<PropertyDescriptor>` | `getOutputProperties()` |
    `java.lang.String` | `getOutputVarHelpText()` |
    `java.util.Collection<PropertyDescriptor>` | `getPropertiesWithVariables()` |
    `java.lang.String` | `getScript()` |
    `java.lang.String` | `getTaskColor()` |
    `java.util.Collection<PropertyDescriptor>` | `getTransitionalAndOutputProperties()` |
    `java.util.Collection<PropertyDescriptor>` | `getTransitionalProperties()` |
    `boolean` | `isKeepPreviousOutputPropertiesOnRetry()` |
    `boolean` | `isSupportedInWorkflow()` |
    `void` | `setConfigurationUri​(java.lang.String configurationUri)` |
    `void` | `setCustomScriptTask​(CustomScriptTask customScriptTask)` |
    `void` | `setKeepPreviousOutputPropertiesOnRetry​(boolean keepPreviousOutputPropertiesOnRetry)` |
    `void` | `setMaxOutputPropertySize​(int maxOutputPropertySize)` |
    `void` | `setSupportedInWorkflow​(boolean supportedInWorkflow)` |

    - ### Methods inherited from class com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem

      `compareTo, equals, get$ciAttributes, get$directoryReference, get$externalProperties, get$internalId, get$referenceId, get$securedCi, get$securedDirectoryReference, get$token, get$validationMessages, getId, getName, getProperty, getPropertyDescriptor, getType, hashCode, hasProperty, set$ciAttributes, set$directoryReference, set$externalProperties, set$internalId, set$referenceId, set$securedCi, set$securedDirectoryReference, set$token, set$validationMessages, setId, setProperty, setType, toString`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### PYTHON_SCRIPT_ID

          public static final java.lang.String PYTHON_SCRIPT_ID

      See Also:
        Constant Field Values

    - #### PYTHON_SCRIPT_PROPERTY

          public static final java.lang.String PYTHON_SCRIPT_PROPERTY

      See Also:
        Constant Field Values

    - #### CUSTOM_SCRIPT_TASK_PROPERTY

          public static final java.lang.String CUSTOM_SCRIPT_TASK_PROPERTY

      See Also:
        Constant Field Values

    - #### UPDATEABLE_PROPERTIES

          public static final java.util.List<java.lang.String> UPDATEABLE_PROPERTIES

  - ### Constructor Detail

    - #### PythonScript

          public PythonScript()

  - ### Method Detail

    - #### getPropertiesWithVariables

          public java.util.Collection<PropertyDescriptor> getPropertiesWithVariables()

    - #### getInputProperties

          public java.util.Collection<PropertyDescriptor> getInputProperties()

    - #### getOutputProperties

          public java.util.Collection<PropertyDescriptor> getOutputProperties()

    - #### getTransitionalAndOutputProperties

          public java.util.Collection<PropertyDescriptor> getTransitionalAndOutputProperties()

    - #### getTransitionalProperties

          public java.util.Collection<PropertyDescriptor> getTransitionalProperties()

    - #### getCustomScriptTask

          public CustomScriptTask getCustomScriptTask()

    - #### setCustomScriptTask

          public void setCustomScriptTask​(CustomScriptTask customScriptTask)

    - #### getIconLocation

          public java.lang.String getIconLocation()

    - #### getOutputVarHelpText

          public java.lang.String getOutputVarHelpText()

    - #### getTaskColor

          public java.lang.String getTaskColor()

    - #### getIconClass

          public java.lang.String getIconClass()

    - #### getMaxOutputPropertySize

          public int getMaxOutputPropertySize()

    - #### setMaxOutputPropertySize

          public void setMaxOutputPropertySize​(int maxOutputPropertySize)

    - #### getConfigurationUri

          public java.lang.String getConfigurationUri()

    - #### setConfigurationUri

          public void setConfigurationUri​(java.lang.String configurationUri)

    - #### isSupportedInWorkflow

          public boolean isSupportedInWorkflow()

    - #### setSupportedInWorkflow

          public void setSupportedInWorkflow​(boolean supportedInWorkflow)

    - #### getScript

          public java.lang.String getScript()
                                     throws java.io.IOException

      Overrides:
        `getScript` in class `BaseScript`
      Throws:
        `java.io.IOException`

    - #### getAbortScript

          public java.lang.String getAbortScript()
                                          throws java.io.IOException

      Overrides:
        `getAbortScript` in class `BaseScript`
      Throws:
        `java.io.IOException`

    - #### getAllSyntheticPropertyKeys

          public java.util.Set<java.lang.String> getAllSyntheticPropertyKeys()

    - #### isKeepPreviousOutputPropertiesOnRetry

          public boolean isKeepPreviousOutputPropertiesOnRetry()

    - #### setKeepPreviousOutputPropertiesOnRetry

          public void setKeepPreviousOutputPropertiesOnRetry​(boolean keepPreviousOutputPropertiesOnRetry)