Package com.xebialabs.xlrelease.domain.variables

# Class ReferenceVariable

java.lang.Object
com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
com.xebialabs.xlrelease.domain.BaseConfiguration
com.xebialabs.xlrelease.domain.variables.Variable
com.xebialabs.xlrelease.domain.variables.Variable.VariableWithValue<String>
com.xebialabs.xlrelease.domain.variables.StringVariable
com.xebialabs.xlrelease.domain.variables.ReferenceVariable

All Implemented Interfaces:
  `ConfigurationItem`, `VisitableItem`, `Serializable`, `Cloneable`, `Comparable<BaseConfigurationItem>`

public class ReferenceVariable extends StringVariable

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class com.xebialabs.xlrelease.domain.variables.Variable

  `Variable.VariableWithValue<V>`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected String`
  `referencedType`
  `static final String`
  `VARIABLE_DELEGATE`

  ### Fields inherited from class com.xebialabs.xlrelease.domain.variables.StringVariable

  `multiline, preventInterpolation, value`

  ### Fields inherited from class com.xebialabs.xlrelease.domain.variables.Variable

  `description, inherited, key, label, requiresValue, showOnReleaseStart, valueProvider`

  ### 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
  `ReferenceVariable()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `getInternalValue()`
  `String`
  `getReferencedType()`
  `void`
  `setReferencedType(String referencedType)`
  `void`
  `setUntypedValue(Object newValue)`
  Sets the underlying value of this variable from given object.
  `void`
  `setValueProvider(ValueProviderConfiguration valueProvider)`

  ### Methods inherited from class com.xebialabs.xlrelease.domain.variables.StringVariable

  `getEmptyValue, getEmptyValueAsString, getMultiline, getValue, getValueAsString, isPassword, isPreventInterpolation, isValueAssignableFrom, setMultiline, setPreventInterpolation, setValue`

  ### Methods inherited from class com.xebialabs.xlrelease.domain.variables.Variable

  `accept, checkFolderVariableValidity, checkGlobalVariableValidity, checkValidity, clone, escapeQuotes, getDescription, getKey, getLabel, getRequiresValue, getShowOnReleaseStart, getValueProvider, isInherited, isValueEmpty, setDescription, setInherited, setKey, setLabel, setRequiresValue, setShowOnReleaseStart`

  ### Methods inherited from class com.xebialabs.xlrelease.domain.BaseConfiguration

  `getFolderId, getTitle, hasId, isSupportedOn, setFolderId, setTitle`

  ### 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

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

- ## Field Details

  - ### VARIABLE_DELEGATE

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

  - ### referencedType

    @Property(required=true, description="The type of the reference, ie: jenkins.Server") protected String referencedType

- ## Constructor Details

  - ### ReferenceVariable

    public ReferenceVariable()

- ## Method Details

  - ### getReferencedType

    public String getReferencedType()

  - ### setReferencedType

    public void setReferencedType(String referencedType)

  - ### setUntypedValue

    public void setUntypedValue(Object newValue) throws IllegalArgumentException
    Description copied from class: `Variable`
    Sets the underlying value of this variable from given object. If a conversion happens to be needed and fails, then an `IllegalArgumentException` will be thrown.
    Overrides:
      `setUntypedValue` in class `StringVariable`
    Parameters:
      `newValue` - the value to set: either of the type needed by this variable type, or one of convertible types.
    Throws:
      `IllegalArgumentException` - if conversion of the value fails.

  - ### setValueProvider

    public void setValueProvider(ValueProviderConfiguration valueProvider)
    Overrides:
      `setValueProvider` in class `Variable`

  - ### getInternalValue

    @ControlTask(delegate="RESOLVE_VARIABLE_VALUE") public Object getInternalValue()
    Overrides:
      `getInternalValue` in class `Variable`