Interface MethodDescriptor


public interface MethodDescriptor
Encapsulates the metadata about a control task (also named control method) of a type in the XL Deploy type system. Control tasks allow actions to be executed on CIs and can be invoked from the GUI or the CLI. Control tasks specify a list of steps to be executed in order. Control tasks can be parametrized in two ways:
  1. by specifying arguments to the control task in the control task configuration
  2. by allowing the user to specify parameters to the control task during control task execution
Arguments are configured in the control task definition in the synthetic.xml file. Arguments are specified as attributes on the synthetic method definition XML and are passed as-is to the control task. Parameters are specified by defining a parameters CI type, which needs to extend the Parameters CI.
  • Method Details

    • getName

      String getName()
      Returns:
      The name of the control task.
    • getLabel

      String getLabel()
      Returns:
      Label text for use in the UI.
    • getDescription

      String getDescription()
      Returns:
      Textual description of the control task.
    • getAttributes

      Map<String,String> getAttributes()
      Returns:
      A map of arguments to be passed to the method call. An entry key represents the name of the argument, and an entry value is the value of the argument.
    • getParameterObjectType

      Type getParameterObjectType()
      Returns:
      The metadata Type object about the specified Parameters CI.
    • invoke

      <T> T invoke(ConfigurationItem item, Parameters params)
      Type Parameters:
      T - The type of the returned object.
      Parameters:
      item - The ConfigurationItem on which to invoke the control task.
      params - The specified Parameterss.
      Returns:
      The result of execution of type T.
    • invoke

      <T> T invoke(ConfigurationItem item)
      Type Parameters:
      T - The type of the returned object.
      Parameters:
      item - The ConfigurationItem on which to invoke the control task.
      Returns:
      The result of execution of type T.
    • getFqn

      String getFqn()
      Returns:
      The fully qualified name of the control task. This is the type name followed by a dot and then the control task name. For example: overthere.SshJumpstation.checkConnection