Fields Summary |
---|
private String | mTypeKind |
private String | mTypeName |
private String | mVOB |
private String | mComment |
private String | mCfile |
private boolean | mRmall |
private boolean | mIgnore |
public static final String | FLAG_IGNORE-ignore flag -- ignore pre-trigger operations when removing a trigger type |
public static final String | FLAG_RMALL-rmall flag -- removes all instances of a type and the type object itself |
public static final String | FLAG_FORCE-force flag -- suppresses confirmation prompts |
public static final String | FLAG_COMMENT-c flag -- comment to attach to the file |
public static final String | FLAG_COMMENTFILE-cfile flag -- file containing a comment to attach to the file |
public static final String | FLAG_NOCOMMENT-nc flag -- no comment is specified |
Methods Summary |
---|
private void | checkOptions(org.apache.tools.ant.types.Commandline cmd)Check the command line options.
if (getIgnore()) {
// -ignore
cmd.createArgument().setValue(FLAG_IGNORE);
}
if (getRmAll()) {
// -rmall -force
cmd.createArgument().setValue(FLAG_RMALL);
cmd.createArgument().setValue(FLAG_FORCE);
}
if (getComment() != null) {
// -c
getCommentCommand(cmd);
} else {
if (getCommentFile() != null) {
// -cfile
getCommentFileCommand(cmd);
} else {
cmd.createArgument().setValue(FLAG_NOCOMMENT);
}
}
// type-kind:type-name
cmd.createArgument().setValue(getTypeSpecifier());
|
public void | execute()Executes the task.
Builds a command line to execute cleartool and then calls Exec's run method
to execute the command line.
Commandline commandLine = new Commandline();
int result = 0;
// Check for required attributes
if (getTypeKind() == null) {
throw new BuildException("Required attribute TypeKind not specified");
}
if (getTypeName() == null) {
throw new BuildException("Required attribute TypeName not specified");
}
// build the command line from what we got. the format is
// cleartool rmtype [options...] type-selector...
// as specified in the CLEARTOOL help
commandLine.setExecutable(getClearToolCommand());
commandLine.createArgument().setValue(COMMAND_RMTYPE);
checkOptions(commandLine);
if (!getFailOnErr()) {
getProject().log("Ignoring any errors that occur for: "
+ getTypeSpecifier(), Project.MSG_VERBOSE);
}
result = run(commandLine);
if (Execute.isFailure(result) && getFailOnErr()) {
String msg = "Failed executing: " + commandLine.toString();
throw new BuildException(msg, getLocation());
}
|
public java.lang.String | getComment()Get comment string
return mComment;
|
private void | getCommentCommand(org.apache.tools.ant.types.Commandline cmd)Get the 'comment' command
if (getComment() != null) {
/* Had to make two separate commands here because if a space is
inserted between the flag and the value, it is treated as a
Windows filename with a space and it is enclosed in double
quotes ("). This breaks clearcase.
*/
cmd.createArgument().setValue(FLAG_COMMENT);
cmd.createArgument().setValue(getComment());
}
|
public java.lang.String | getCommentFile()Get comment file
return mCfile;
|
private void | getCommentFileCommand(org.apache.tools.ant.types.Commandline cmd)Get the 'commentfile' command
if (getCommentFile() != null) {
/* Had to make two separate commands here because if a space is
inserted between the flag and the value, it is treated as a
Windows filename with a space and it is enclosed in double
quotes ("). This breaks clearcase.
*/
cmd.createArgument().setValue(FLAG_COMMENTFILE);
cmd.createArgument().setValue(getCommentFile());
}
|
public boolean | getIgnore()Get ignore flag status
return mIgnore;
|
public boolean | getRmAll()Get rmall flag status
return mRmall;
|
public java.lang.String | getTypeKind()Get type-kind string
return mTypeKind;
|
public java.lang.String | getTypeName()Get type-name string
return mTypeName;
|
private java.lang.String | getTypeSpecifier()Get the 'type-specifier' string
String tkind = getTypeKind();
String tname = getTypeName();
String typeSpec = null;
// Return the type-selector
typeSpec = tkind + ":" + tname;
if (getVOB() != null) {
typeSpec += "@" + getVOB();
}
return typeSpec;
|
public java.lang.String | getVOB()Get VOB name
return mVOB;
|
public void | setComment(java.lang.String comment)Set comment string
mComment = comment;
|
public void | setCommentFile(java.lang.String cfile)Set comment file
mCfile = cfile;
|
public void | setIgnore(boolean ignore)Set the ignore flag
mIgnore = ignore;
|
public void | setRmAll(boolean rmall)Set rmall flag
mRmall = rmall;
|
public void | setTypeKind(java.lang.String tk)Set type-kind string
mTypeKind = tk;
|
public void | setTypeName(java.lang.String tn)Set type-name string
mTypeName = tn;
|
public void | setVOB(java.lang.String vob)Set the VOB name
mVOB = vob;
|