ClearCase (Apache Ant API)
Description: declaration: package: org.apache.tools.ant.taskdefs.optional.clearcase, class: ClearCase

# Class ClearCase

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.clearcase.ClearCase

All Implemented Interfaces:
  `Cloneable`

Direct Known Subclasses:
  `CCCheckin, CCCheckout, CCLock, CCMkattr, CCMkbl, CCMkdir, CCMkelem, CCMklabel, CCMklbtype, CCRmtype, CCUnCheckout, CCUnlock, CCUpdate`

public abstract class ClearCase extends Task
A base class for creating tasks for executing commands on ClearCase.

By default the task expects the cleartool executable to be in the path, you can override this be specifying the cleartooldir attribute.

This class provides set and get methods for the 'viewpath' and 'objselect' attribute. It also contains constants for the flags that can be passed to cleartool.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `COMMAND_CHECKIN`
  The 'Checkin' command
  `static final String`
  `COMMAND_CHECKOUT`
  The 'Checkout' command
  `static final String`
  `COMMAND_LOCK`
  The 'Lock' command
  `static final String`
  `COMMAND_LSCO`
  The 'LsCheckout' command
  `static final String`
  `COMMAND_MKATTR`
  The 'Mkattr' command
  `static final String`
  `COMMAND_MKBL`
  The 'Mkbl' command
  `static final String`
  `COMMAND_MKDIR`
  The 'Mkdir' command
  `static final String`
  `COMMAND_MKELEM`
  The 'Mkelem' command
  `static final String`
  `COMMAND_MKLABEL`
  The 'Mklabel' command
  `static final String`
  `COMMAND_MKLBTYPE`
  The 'Mklbtype' command
  `static final String`
  `COMMAND_RMTYPE`
  The 'Rmtype' command
  `static final String`
  `COMMAND_UNCHECKOUT`
  The 'UndoCheckout' command
  `static final String`
  `COMMAND_UNLOCK`
  The 'Unlock' command
  `static final String`
  `COMMAND_UPDATE`
  The 'Update' command

  ### Fields inherited from class Task

  `target, taskName, taskType, wrapper`
  Modifier and Type
  Field
  Description
  `protected Target`
  `target`
  Deprecated.
  since 1.6.x.
  `protected String`
  `taskName`
  Deprecated.
  since 1.6.x.
  `protected String`
  `taskType`
  Deprecated.
  since 1.6.x.
  `protected RuntimeConfigurable`
  `wrapper`
  Deprecated.
  since 1.6.x.

  ### Fields inherited from class ProjectComponent

  `description, location, project`
  Modifier and Type
  Field
  Description
  `protected String`
  `description`
  Deprecated.
  since 1.6.x.
  `protected Location`
  `location`
  Deprecated.
  since 1.6.x.
  `protected Project`
  `project`
  Deprecated.
  since 1.6.x.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ClearCase()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected final String`
  `getClearToolCommand()`
  Builds and returns the command string to execute cleartool
  `boolean`
  `getFailOnErr()`
  Get failonerr flag status
  `String`
  `getObjSelect()`
  Get the object to operate on
  `String`
  `getViewPath()`
  Get the path to the item in a clearcase view
  `String`
  `getViewPathBasename()`
  Get the basename path of the item in a clearcase view
  `protected int`
  `run(Commandline cmd)`
  Execute the given command are return success or failure
  `protected String`
  `runS(Commandline cmdline)`
  Deprecated.
  use the two arg version instead
  `protected String`
  `runS(Commandline cmdline, boolean failOnError)`
  Execute the given command, and return it's output
  `final void`
  `setClearToolDir(String dir)`
  Set the directory where the cleartool executable is located.
  `void`
  `setFailOnErr(boolean failonerr)`
  If true, command will throw an exception on failure.
  `final void`
  `setObjSelect(String objSelect)`
  Set the object to operate on.
  `final void`
  `setViewPath(String viewPath)`
  Set the path to the item in a ClearCase view to operate on.

  ### Methods inherited from class Task

  `bindToOwner, execute, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`
  Modifier and Type
  Method
  Description
  `final void`
  `bindToOwner(Task owner)`
  Bind a task to another; use this when configuring a newly created task to do work on behalf of another.
  `void`
  `execute()`
  Called by the project to let the task do its work.
  `Target`
  `getOwningTarget()`
  Returns the container target of this task.
  `RuntimeConfigurable`
  `getRuntimeConfigurableWrapper()`
  Returns the wrapper used for runtime configuration.
  `String`
  `getTaskName()`
  Returns the name to use in logging messages.
  `String`
  `getTaskType()`
  Return the type of task.
  `protected RuntimeConfigurable`
  `getWrapper()`
  Return the runtime configurable structure for this task.
  `protected void`
  `handleErrorFlush(String output)`
  Handles an error line by logging it with the WARN priority.
  `protected void`
  `handleErrorOutput(String output)`
  Handles an error output by logging it with the WARN priority.
  `protected void`
  `handleFlush(String output)`
  Handles output by logging it with the INFO priority.
  `protected int`
  `handleInput(byte[] buffer, int offset, int length)`
  Handle an input request by this task.
  `protected void`
  `handleOutput(String output)`
  Handles output by logging it with the INFO priority.
  `void`
  `init()`
  Called by the project to let the task initialize properly.
  `protected final boolean`
  `isInvalid()`
  Has this task been marked invalid?
  `void`
  `log(String msg)`
  Logs a message with the default (INFO) priority.
  `void`
  `log(String msg, int msgLevel)`
  Logs a message with the given priority.
  `void`
  `log(String msg, Throwable t, int msgLevel)`
  Logs a message with the given priority.
  `void`
  `log(Throwable t, int msgLevel)`
  Logs a message with the given priority.
  `void`
  `maybeConfigure()`
  Configures this task - if it hasn't been done already.
  `final void`
  `perform()`
  Performs this task if it's still valid, or gets a replacement version and performs that otherwise.
  `void`
  `reconfigure()`
  Force the task to be reconfigured from its RuntimeConfigurable.
  `void`
  `setOwningTarget(Target target)`
  Sets the target container of this task.
  `void`
  `setRuntimeConfigurableWrapper(RuntimeConfigurable wrapper)`
  Sets the wrapper to be used for runtime configuration.
  `void`
  `setTaskName(String name)`
  Sets the name to use in logging messages.
  `void`
  `setTaskType(String type)`
  Sets the name with which the task has been invoked.

  ### Methods inherited from class ProjectComponent

  `clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`
  Modifier and Type
  Method
  Description
  `Object`
  `clone()`
  `String`
  `getDescription()`
  Returns the description of the current action.
  `Location`
  `getLocation()`
  Returns the file/location where this task was defined.
  `Project`
  `getProject()`
  Returns the project to which this component belongs.
  `void`
  `setDescription(String desc)`
  Sets a description of the current action.
  `void`
  `setLocation(Location location)`
  Sets the file/location where this task was defined.
  `void`
  `setProject(Project project)`
  Sets the project object of this component.

  ### Methods inherited from class Object

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

- ## Field Details

  - ### COMMAND_UPDATE

    public static final String COMMAND_UPDATE
    The 'Update' command
    See Also:
      - Constant Field Values

  - ### COMMAND_CHECKOUT

    public static final String COMMAND_CHECKOUT
    The 'Checkout' command
    See Also:
      - Constant Field Values

  - ### COMMAND_CHECKIN

    public static final String COMMAND_CHECKIN
    The 'Checkin' command
    See Also:
      - Constant Field Values

  - ### COMMAND_UNCHECKOUT

    public static final String COMMAND_UNCHECKOUT
    The 'UndoCheckout' command
    See Also:
      - Constant Field Values

  - ### COMMAND_LOCK

    public static final String COMMAND_LOCK
    The 'Lock' command
    See Also:
      - Constant Field Values

  - ### COMMAND_UNLOCK

    public static final String COMMAND_UNLOCK
    The 'Unlock' command
    See Also:
      - Constant Field Values

  - ### COMMAND_MKBL

    public static final String COMMAND_MKBL
    The 'Mkbl' command
    See Also:
      - Constant Field Values

  - ### COMMAND_MKLABEL

    public static final String COMMAND_MKLABEL
    The 'Mklabel' command
    See Also:
      - Constant Field Values

  - ### COMMAND_MKLBTYPE

    public static final String COMMAND_MKLBTYPE
    The 'Mklbtype' command
    See Also:
      - Constant Field Values

  - ### COMMAND_RMTYPE

    public static final String COMMAND_RMTYPE
    The 'Rmtype' command
    See Also:
      - Constant Field Values

  - ### COMMAND_LSCO

    public static final String COMMAND_LSCO
    The 'LsCheckout' command
    See Also:
      - Constant Field Values

  - ### COMMAND_MKELEM

    public static final String COMMAND_MKELEM
    The 'Mkelem' command
    See Also:
      - Constant Field Values

  - ### COMMAND_MKATTR

    public static final String COMMAND_MKATTR
    The 'Mkattr' command
    See Also:
      - Constant Field Values

  - ### COMMAND_MKDIR

    public static final String COMMAND_MKDIR
    The 'Mkdir' command
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### ClearCase

    public ClearCase()

- ## Method Details

  - ### setClearToolDir

    public final void setClearToolDir(String dir)
    Set the directory where the cleartool executable is located.
    Parameters:
      `dir` - the directory containing the cleartool executable

  - ### getClearToolCommand

    protected final String getClearToolCommand()
    Builds and returns the command string to execute cleartool
    Returns:
      String containing path to the executable

  - ### setViewPath

    public final void setViewPath(String viewPath)
    Set the path to the item in a ClearCase view to operate on.
    Parameters:
      `viewPath` - Path to the view directory or file

  - ### getViewPath

    public String getViewPath()
    Get the path to the item in a clearcase view
    Returns:
      mviewPath

  - ### getViewPathBasename

    public String getViewPathBasename()
    Get the basename path of the item in a clearcase view
    Returns:
      basename

  - ### setObjSelect

    public final void setObjSelect(String objSelect)
    Set the object to operate on.
    Parameters:
      `objSelect` - object to operate on

  - ### getObjSelect

    public String getObjSelect()
    Get the object to operate on
    Returns:
      mobjSelect

  - ### run

    protected int run(Commandline cmd)
    Execute the given command are return success or failure
    Parameters:
      `cmd` - command line to execute
    Returns:
      the exit status of the subprocess or `INVALID`

  - ### runS

    @Deprecated protected String runS(Commandline cmdline)
    Deprecated.
    use the two arg version instead
    Execute the given command, and return it's output
    Parameters:
      `cmdline` - command line to execute
    Returns:
      output of the command line

  - ### runS

    protected String runS(Commandline cmdline, boolean failOnError)
    Execute the given command, and return it's output
    Parameters:
      `cmdline` - command line to execute
      `failOnError` - whether to fail the build if the command fails
    Returns:
      output of the command line
    Since:
      Ant 1.10.6

  - ### setFailOnErr

    public void setFailOnErr(boolean failonerr)
    If true, command will throw an exception on failure.
    Parameters:
      `failonerr` - the status to set the flag to
    Since:
      ant 1.6.1

  - ### getFailOnErr

    public boolean getFailOnErr()
    Get failonerr flag status
    Returns:
      boolean containing status of failonerr flag
    Since:
      ant 1.6.1