=================================================
cloneset:0
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\ComponentHelper.java 
methodname : ComponentHelper.checkTaskClass ( size:128 ) 
-------------------------------------
/** 
 * Checks whether or not a class is suitable for serving as Ant task.
 * Ant task implementation classes must be public, concrete, and have
 * a no-arg constructor.
 * @param taskClass The class to be checked.
 * Must not be <code>null</code>.
 * @exception BuildException if the class is unsuitable for being an Ant
 * task. An error level message is logged before
 * this exception is thrown.
 */
public void checkTaskClass(final Class<?> taskClass) throws BuildException {
  if (!Modifier.isPublic(taskClass.getModifiers())) {
    final String message=taskClass + " is not public";
    project.log(message,Project.MSG_ERR);
    throw new BuildException(message);
  }
  if (Modifier.isAbstract(taskClass.getModifiers())) {
    final String message=taskClass + " is abstract";
    project.log(message,Project.MSG_ERR);
    throw new BuildException(message);
  }
  try {
    taskClass.getConstructor((Class[])null);
  }
 catch (  NoSuchMethodException e) {
    final String message="No public no-arg constructor in " + taskClass;
    project.log(message,Project.MSG_ERR);
    throw new BuildException(message);
  }
  if (!Task.class.isAssignableFrom(taskClass)) {
    TaskAdapter.checkTaskClass(taskClass,project);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\Project.java 
methodname : Project.checkTaskClass ( size:157 ) 
-------------------------------------
/** 
 * Check whether or not a class is suitable for serving as Ant task.
 * Ant task implementation classes must be public, concrete, and have
 * a no-arg constructor.
 * @param taskClass The class to be checked.
 * Must not be <code>null</code>.
 * @exception BuildException if the class is unsuitable for being an Ant
 * task. An error level message is logged before
 * this exception is thrown.
 */
public void checkTaskClass(final Class<?> taskClass) throws BuildException {
  ComponentHelper.getComponentHelper(this).checkTaskClass(taskClass);
  if (!Modifier.isPublic(taskClass.getModifiers())) {
    final String message=taskClass + " is not public";
    log(message,Project.MSG_ERR);
    throw new BuildException(message);
  }
  if (Modifier.isAbstract(taskClass.getModifiers())) {
    final String message=taskClass + " is abstract";
    log(message,Project.MSG_ERR);
    throw new BuildException(message);
  }
  try {
    taskClass.getConstructor();
  }
 catch (  NoSuchMethodException e) {
    final String message="No public no-arg constructor in " + taskClass;
    log(message,Project.MSG_ERR);
    throw new BuildException(message);
  }
catch (  LinkageError e) {
    String message="Could not load " + taskClass + ": "+ e;
    log(message,Project.MSG_ERR);
    throw new BuildException(message,e);
  }
  if (!Task.class.isAssignableFrom(taskClass)) {
    TaskAdapter.checkTaskClass(taskClass,this);
  }
}

=================================================
cloneset:1
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\DefaultDefinitions.java 
methodname : DefaultDefinitions.attributeNamespaceDef ( size:50 ) 
-------------------------------------
private void attributeNamespaceDef(String ns){
  AntTypeDefinition def=new AntTypeDefinition();
  def.setName(ProjectHelper.nsToComponentName(ns));
  def.setClassName(OATA + "attribute.AttributeNamespace");
  def.setClassLoader(getClass().getClassLoader());
  def.setRestrict(true);
  componentHelper.addDataTypeDefinition(def);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\DefaultDefinitions.java 
methodname : DefaultDefinitions.componentDef ( size:67 ) 
-------------------------------------
private void componentDef(String ns,String name,String classname){
  AntTypeDefinition def=new AntTypeDefinition();
  String n=ProjectHelper.genComponentName(ns,name);
  def.setName(ProjectHelper.genComponentName(ns,name));
  def.setClassName(classname);
  def.setClassLoader(getClass().getClassLoader());
  def.setRestrict(true);
  componentHelper.addDataTypeDefinition(def);
}

=================================================
cloneset:2
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\DemuxOutputStream.java 
methodname : DemuxOutputStream.getBufferInfo ( size:60 ) 
-------------------------------------
/** 
 * Returns the buffer associated with the current thread.
 * @return a BufferInfo for the current thread to write data to
 */
private BufferInfo getBufferInfo(){
  Thread current=Thread.currentThread();
  BufferInfo bufferInfo=(BufferInfo)buffers.get(current);
  if (bufferInfo == null) {
    bufferInfo=new BufferInfo();
    bufferInfo.buffer=new ByteArrayOutputStream(INTIAL_SIZE);
    bufferInfo.crSeen=false;
    buffers.put(current,bufferInfo);
  }
  return bufferInfo;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\DemuxOutputStream.java 
methodname : DemuxOutputStream.resetBufferInfo ( size:53 ) 
-------------------------------------
/** 
 * Resets the buffer for the current thread.
 */
private void resetBufferInfo(){
  Thread current=Thread.currentThread();
  BufferInfo bufferInfo=(BufferInfo)buffers.get(current);
  try {
    bufferInfo.buffer.close();
  }
 catch (  IOException e) {
  }
  bufferInfo.buffer=new ByteArrayOutputStream();
  bufferInfo.crSeen=false;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\LineOrientedOutputStream.java 
methodname : LineOrientedOutputStream.write ( size:113 ) 
-------------------------------------
/** 
 * Write a block of characters to the output stream
 * @param b the array containing the data
 * @param off the offset into the array where data starts
 * @param len the length of block
 * @throws IOException if the data cannot be written into the stream.
 */
public final void write(byte[] b,int off,int len) throws IOException {
  int offset=off;
  int blockStartOffset=offset;
  int remaining=len;
  while (remaining > 0) {
    while (remaining > 0 && b[offset] != LF && b[offset] != CR) {
      offset++;
      remaining--;
    }
    int blockLength=offset - blockStartOffset;
    if (blockLength > 0) {
      buffer.write(b,blockStartOffset,blockLength);
    }
    while (remaining > 0 && (b[offset] == LF || b[offset] == CR)) {
      write(b[offset]);
      offset++;
      remaining--;
    }
    blockStartOffset=offset;
  }
}

=================================================
cloneset:3
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\HeadFilter.java 
methodname : HeadFilter.read ( size:84 ) 
-------------------------------------
/** 
 * Returns the next character in the filtered stream. If the desired
 * number of lines have already been read, the resulting stream is
 * effectively at an end. Otherwise, the next character from the
 * underlying stream is read and returned.
 * @return the next character in the resulting stream, or -1
 * if the end of the resulting stream has been reached
 * @exception IOException if the underlying stream throws an IOException
 * during reading
 */
public int read() throws IOException {
  if (!getInitialized()) {
    initialize();
    setInitialized(true);
  }
  while (line == null || line.length() == 0) {
    line=lineTokenizer.getToken(in);
    if (line == null) {
      return -1;
    }
    line=headFilter(line);
    if (eof) {
      return -1;
    }
    linePos=0;
  }
  int ch=line.charAt(linePos);
  linePos++;
  if (linePos == line.length()) {
    line=null;
  }
  return ch;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\TailFilter.java 
methodname : TailFilter.read ( size:78 ) 
-------------------------------------
/** 
 * Returns the next character in the filtered stream. If the read-ahead
 * has been completed, the next character in the buffer is returned.
 * Otherwise, the stream is read to the end and buffered (with the buffer
 * growing as necessary), then the appropriate position in the buffer is
 * set to read from.
 * @return the next character in the resulting stream, or -1
 * if the end of the resulting stream has been reached
 * @exception IOException if the underlying stream throws an IOException
 * during reading
 */
public int read() throws IOException {
  if (!getInitialized()) {
    initialize();
    setInitialized(true);
  }
  while (line == null || line.length() == 0) {
    line=lineTokenizer.getToken(in);
    line=tailFilter(line);
    if (line == null) {
      return -1;
    }
    linePos=0;
  }
  int ch=line.charAt(linePos);
  linePos++;
  if (linePos == line.length()) {
    line=null;
  }
  return ch;
}

=================================================
cloneset:4
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\PrefixLines.java 
methodname : PrefixLines.initialize ( size:51 ) 
-------------------------------------
/** 
 * Initializes the prefix if it is available from the parameters.
 */
private void initialize(){
  Parameter[] params=getParameters();
  if (params != null) {
    for (int i=0; i < params.length; i++) {
      if (PREFIX_KEY.equals(params[i].getName())) {
        prefix=params[i].getValue();
        break;
      }
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\SuffixLines.java 
methodname : SuffixLines.initialize ( size:51 ) 
-------------------------------------
/** 
 * Initializes the suffix if it is available from the parameters.
 */
private void initialize(){
  Parameter[] params=getParameters();
  if (params != null) {
    for (int i=0; i < params.length; i++) {
      if (SUFFIX_KEY.equals(params[i].getName())) {
        suffix=params[i].getValue();
        break;
      }
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\TabsToSpaces.java 
methodname : TabsToSpaces.initialize ( size:61 ) 
-------------------------------------
/** 
 * Parses the parameters to set the tab length.
 */
private void initialize(){
  Parameter[] params=getParameters();
  if (params != null) {
    for (int i=0; i < params.length; i++) {
      if (params[i] != null) {
        if (TAB_LENGTH_KEY.equals(params[i].getName())) {
          tabLength=Integer.parseInt(params[i].getValue());
          break;
        }
      }
    }
  }
}

=================================================
cloneset:5
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\TokenFilter.java 
methodname : TokenFilter.ReplaceRegex.initialize ( size:64 ) 
-------------------------------------
private void initialize(){
  if (initialized) {
    return;
  }
  options=convertRegexOptions(flags);
  if (from == null) {
    throw new BuildException("Missing pattern in replaceregex");
  }
  regularExpression=new RegularExpression();
  regularExpression.setPattern(from);
  regexp=regularExpression.getRegexp(getProject());
  if (to == null) {
    to="";
  }
  substitution=new Substitution();
  substitution.setExpression(to);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\filters\TokenFilter.java 
methodname : TokenFilter.ContainsRegex.initialize ( size:61 ) 
-------------------------------------
private void initialize(){
  if (initialized) {
    return;
  }
  options=convertRegexOptions(flags);
  if (from == null) {
    throw new BuildException("Missing from in containsregex");
  }
  regularExpression=new RegularExpression();
  regularExpression.setPattern(from);
  regexp=regularExpression.getRegexp(getProject());
  if (to == null) {
    return;
  }
  substitution=new Substitution();
  substitution.setExpression(to);
}

=================================================
cloneset:6
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\helper\ProjectHelperImpl.java 
methodname : ProjectHelperImpl.TaskHandler.startElement ( size:50 ) 
-------------------------------------
/** 
 * Handles the start of an element within a target. Task containers
 * will always use another task handler, and all other tasks
 * will always use a nested element handler.
 * @param name The name of the element being started.
 * Will not be <code>null</code>.
 * @param attrs Attributes of the element being started.
 * Will not be <code>null</code>.
 * @exception SAXParseException if an error occurs when initialising
 * the appropriate child handler
 */
public void startElement(String name,AttributeList attrs) throws SAXParseException {
  if (task instanceof TaskContainer) {
    new TaskHandler(helperImpl,this,(TaskContainer)task,wrapper,target).init(name,attrs);
  }
 else {
    new NestedElementHandler(helperImpl,this,task,wrapper,target).init(name,attrs);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\helper\ProjectHelperImpl.java 
methodname : ProjectHelperImpl.NestedElementHandler.startElement ( size:50 ) 
-------------------------------------
/** 
 * Handles the start of an element within this one. Task containers
 * will always use a task handler, and all other elements
 * will always use another nested element handler.
 * @param name The name of the element being started.
 * Will not be <code>null</code>.
 * @param attrs Attributes of the element being started.
 * Will not be <code>null</code>.
 * @exception SAXParseException if an error occurs when initialising
 * the appropriate child handler
 */
public void startElement(String name,AttributeList attrs) throws SAXParseException {
  if (child instanceof TaskContainer) {
    new TaskHandler(helperImpl,this,(TaskContainer)child,childWrapper,target).init(name,attrs);
  }
 else {
    new NestedElementHandler(helperImpl,this,child,childWrapper,target).init(name,attrs);
  }
}

=================================================
cloneset:7
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\IntrospectionHelper.java 
methodname : IntrospectionHelper.createElement ( size:88 ) 
-------------------------------------
/** 
 * Creates a named nested element. Depending on the results of the
 * initial introspection, either a method in the given parent instance
 * or a simple no-arg constructor is used to create an instance of the
 * specified element type.
 * @param project Project to which the parent object belongs.
 * Must not be <code>null</code>. If the resulting
 * object is an instance of ProjectComponent, its
 * Project reference is set to this parameter value.
 * @param parent  Parent object used to create the instance.
 * Must not be <code>null</code>.
 * @param elementName Name of the element to create an instance of.
 * Must not be <code>null</code>.
 * @return an instance of the specified element type
 * @deprecated since 1.6.x.
 * This is not a namespace aware method.
 * @exception BuildException if no method is available to create the
 * element instance, or if the creating method fails.
 */
public Object createElement(Project project,Object parent,String elementName) throws BuildException {
  NestedCreator nc=getNestedCreator(project,"",parent,elementName,null);
  try {
    Object nestedElement=nc.create(project,parent,null);
    if (project != null) {
      project.setProjectReference(nestedElement);
    }
    return nestedElement;
  }
 catch (  IllegalAccessException ie) {
    throw new BuildException(ie);
  }
catch (  InstantiationException ine) {
    throw new BuildException(ine);
  }
catch (  InvocationTargetException ite) {
    throw extractBuildException(ite);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\IntrospectionHelper.java 
methodname : IntrospectionHelper.storeElement ( size:91 ) 
-------------------------------------
/** 
 * Stores a named nested element using a storage method determined
 * by the initial introspection. If no appropriate storage method
 * is available, this method returns immediately.
 * @param project Ignored in this implementation.
 * May be <code>null</code>.
 * @param parent  Parent instance to store the child in.
 * Must not be <code>null</code>.
 * @param child   Child instance to store in the parent.
 * Should not be <code>null</code>.
 * @param elementName  Name of the child element to store.
 * May be <code>null</code>, in which case
 * this method returns immediately.
 * @exception BuildException if the storage method fails.
 */
public void storeElement(Project project,Object parent,Object child,String elementName) throws BuildException {
  if (elementName == null) {
    return;
  }
  NestedCreator ns=(NestedCreator)nestedCreators.get(elementName.toLowerCase(Locale.ENGLISH));
  if (ns == null) {
    return;
  }
  try {
    ns.store(parent,child);
  }
 catch (  IllegalAccessException ie) {
    throw new BuildException(ie);
  }
catch (  InstantiationException ine) {
    throw new BuildException(ine);
  }
catch (  InvocationTargetException ite) {
    throw extractBuildException(ite);
  }
}

=================================================
cloneset:8
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\listener\BigProjectLogger.java 
methodname : BigProjectLogger.subBuildStarted ( size:81 ) 
-------------------------------------
/** 
 * {@inheritDoc}
 * @param event An event with any relevant extra information. Must not be <code>null</code>.
 */
public void subBuildStarted(BuildEvent event){
  String name=extractNameOrDefault(event);
  Project project=event.getProject();
  File base=project == null ? null : project.getBaseDir();
  String path=(base == null) ? "With no base directory" : "In " + base.getAbsolutePath();
  printMessage(StringUtils.LINE_SEP + getHeader() + StringUtils.LINE_SEP+ "Entering project "+ name+ StringUtils.LINE_SEP+ path+ StringUtils.LINE_SEP+ getFooter(),out,event.getPriority());
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\listener\BigProjectLogger.java 
methodname : BigProjectLogger.subBuildFinished ( size:55 ) 
-------------------------------------
/** 
 * {@inheritDoc} 
 */
public void subBuildFinished(BuildEvent event){
  String name=extractNameOrDefault(event);
  String failed=event.getException() != null ? "failing " : "";
  printMessage(StringUtils.LINE_SEP + getHeader() + StringUtils.LINE_SEP+ "Exiting "+ failed+ "project "+ name+ StringUtils.LINE_SEP+ getFooter(),out,event.getPriority());
}

=================================================
cloneset:9
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\listener\CommonsLoggingListener.java 
methodname : CommonsLoggingListener.taskStarted ( size:85 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
public void taskStarted(BuildEvent event){
  if (initialized) {
    Task task=event.getTask();
    Object real=task;
    if (task instanceof UnknownElement) {
      Object realObj=((UnknownElement)task).getTask();
      if (realObj != null) {
        real=realObj;
      }
    }
    Log log=getLog(real.getClass().getName(),null);
    if (log.isTraceEnabled()) {
      realLog(log,"Task \"" + task.getTaskName() + "\" started ",Project.MSG_VERBOSE,null);
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\listener\CommonsLoggingListener.java 
methodname : CommonsLoggingListener.taskFinished ( size:109 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
public void taskFinished(BuildEvent event){
  if (initialized) {
    Task task=event.getTask();
    Object real=task;
    if (task instanceof UnknownElement) {
      Object realObj=((UnknownElement)task).getTask();
      if (realObj != null) {
        real=realObj;
      }
    }
    Log log=getLog(real.getClass().getName(),null);
    if (event.getException() == null) {
      if (log.isTraceEnabled()) {
        realLog(log,"Task \"" + task.getTaskName() + "\" finished.",Project.MSG_VERBOSE,null);
      }
    }
 else {
      realLog(log,"Task \"" + task.getTaskName() + "\" finished with error.",Project.MSG_ERR,event.getException());
    }
  }
}

=================================================
cloneset:10
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\PropertyHelper.java 
methodname : PropertyHelper.setProperty ( size:119 ) 
-------------------------------------
/** 
 * Default implementation of setProperty. Will be called from Project.
 * @param name    The name of the property.
 * @param value   The value to set the property to.
 * @param verbose If this is true output extra log messages.
 * @return true if the property is set.
 */
public boolean setProperty(String name,Object value,boolean verbose){
  for (  PropertySetter setter : getDelegates(PropertySetter.class)) {
    if (setter.set(name,value,this)) {
      return true;
    }
  }
synchronized (this) {
    if (userProperties.containsKey(name)) {
      if (project != null && verbose) {
        project.log("Override ignored for user property \"" + name + "\"",Project.MSG_VERBOSE);
      }
      return false;
    }
    if (project != null && verbose) {
      if (properties.containsKey(name)) {
        project.log("Overriding previous definition of property \"" + name + "\"",Project.MSG_VERBOSE);
      }
      project.log("Setting project property: " + name + " -> "+ value,Project.MSG_DEBUG);
    }
    if (name != null && value != null) {
      properties.put(name,value);
    }
    return true;
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\PropertyHelper.java 
methodname : PropertyHelper.setNewProperty ( size:90 ) 
-------------------------------------
/** 
 * Sets a property if no value currently exists. If the property
 * exists already, a message is logged and the method returns with
 * no other effect.
 * @param name The name of property to set.
 * Must not be <code>null</code>.
 * @param value The new value of the property.
 * Must not be <code>null</code>.
 * @since Ant 1.8.0
 */
public void setNewProperty(String name,Object value){
  for (  PropertySetter setter : getDelegates(PropertySetter.class)) {
    if (setter.setNew(name,value,this)) {
      return;
    }
  }
synchronized (this) {
    if (project != null && properties.containsKey(name)) {
      project.log("Override ignored for property \"" + name + "\"",Project.MSG_VERBOSE);
      return;
    }
    if (project != null) {
      project.log("Setting project property: " + name + " -> "+ value,Project.MSG_DEBUG);
    }
    if (name != null && value != null) {
      properties.put(name,value);
    }
  }
}

=================================================
cloneset:11
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\compilers\DefaultCompilerAdapter.java 
methodname : DefaultCompilerAdapter.logAndAddFilesToCompile ( size:112 ) 
-------------------------------------
/** 
 * Logs the compilation parameters, adds the files to compile and logs the
 * &quot;niceSourceList&quot;
 * @param cmd the command line
 */
protected void logAndAddFilesToCompile(Commandline cmd){
  attributes.log("Compilation " + cmd.describeArguments(),Project.MSG_VERBOSE);
  StringBuffer niceSourceList=new StringBuffer("File");
  if (compileList.length != 1) {
    niceSourceList.append("s");
  }
  niceSourceList.append(" to be compiled:");
  niceSourceList.append(StringUtils.LINE_SEP);
  for (int i=0; i < compileList.length; i++) {
    String arg=compileList[i].getAbsolutePath();
    cmd.createArgument().setValue(arg);
    niceSourceList.append("    ");
    niceSourceList.append(arg);
    niceSourceList.append(StringUtils.LINE_SEP);
  }
  attributes.log(niceSourceList.toString(),Project.MSG_VERBOSE);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\rmic\DefaultRmicAdapter.java 
methodname : DefaultRmicAdapter.logAndAddFilesToCompile ( size:111 ) 
-------------------------------------
/** 
 * Logs the compilation parameters, adds the files to compile and logs the
 * &quot;niceSourceList&quot;
 * @param cmd the commandline args
 */
protected void logAndAddFilesToCompile(Commandline cmd){
  Vector compileList=attributes.getCompileList();
  attributes.log("Compilation " + cmd.describeArguments(),Project.MSG_VERBOSE);
  StringBuffer niceSourceList=new StringBuffer("File");
  int cListSize=compileList.size();
  if (cListSize != 1) {
    niceSourceList.append("s");
  }
  niceSourceList.append(" to be compiled:");
  for (int i=0; i < cListSize; i++) {
    String arg=(String)compileList.elementAt(i);
    cmd.createArgument().setValue(arg);
    niceSourceList.append("    ");
    niceSourceList.append(arg);
  }
  attributes.log(niceSourceList.toString(),Project.MSG_VERBOSE);
}

=================================================
cloneset:12
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\cvslib\CvsTagDiff.java 
methodname : CvsTagDiff.doFileIsNew ( size:97 ) 
-------------------------------------
private boolean doFileIsNew(Vector entries,String line){
  int index=line.indexOf(FILE_IS_NEW);
  if (index == -1) {
    return false;
  }
  String filename=line.substring(0,index);
  String rev=null;
  int indexrev=line.indexOf(REVISION,index);
  if (indexrev != -1) {
    rev=line.substring(indexrev + REVISION.length());
  }
  CvsTagEntry entry=new CvsTagEntry(filename,rev);
  entries.addElement(entry);
  log(entry.toString(),Project.MSG_VERBOSE);
  return true;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\cvslib\CvsTagDiff.java 
methodname : CvsTagDiff.doFileWasRemoved ( size:103 ) 
-------------------------------------
private boolean doFileWasRemoved(Vector entries,String line){
  if (ignoreRemoved) {
    return false;
  }
  int index=line.indexOf(FILE_WAS_REMOVED);
  if (index == -1) {
    return false;
  }
  String filename=line.substring(0,index);
  String rev=null;
  int indexrev=line.indexOf(REVISION,index);
  if (indexrev != -1) {
    rev=line.substring(indexrev + REVISION.length());
  }
  CvsTagEntry entry=new CvsTagEntry(filename,null,rev);
  entries.addElement(entry);
  log(entry.toString(),Project.MSG_VERBOSE);
  return true;
}

=================================================
cloneset:13
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\Deltree.java 
methodname : Deltree.execute ( size:90 ) 
-------------------------------------
/** 
 * Do the work.
 * @exception BuildException if the task is not configured correctly or
 * the tree cannot be removed.
 */
public void execute() throws BuildException {
  log("DEPRECATED - The deltree task is deprecated.  " + "Use delete instead.");
  if (dir == null) {
    throw new BuildException("dir attribute must be set!",getLocation());
  }
  if (dir.exists()) {
    if (!dir.isDirectory()) {
      if (!dir.delete()) {
        throw new BuildException("Unable to delete directory " + dir.getAbsolutePath(),getLocation());
      }
      return;
    }
    log("Deleting: " + dir.getAbsolutePath());
    try {
      removeDir(dir);
    }
 catch (    IOException ioe) {
      String msg="Unable to delete " + dir.getAbsolutePath();
      throw new BuildException(msg,getLocation());
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\Mkdir.java 
methodname : Mkdir.execute ( size:107 ) 
-------------------------------------
/** 
 * create the directory and all parents
 * @throws BuildException if dir is somehow invalid, or creation failed.
 */
public void execute() throws BuildException {
  if (dir == null) {
    throw new BuildException("dir attribute is required",getLocation());
  }
  if (dir.isFile()) {
    throw new BuildException("Unable to create directory as a file " + "already exists with that name: " + dir.getAbsolutePath());
  }
  if (!dir.exists()) {
    boolean result=mkdirs(dir);
    if (!result) {
      if (dir.exists()) {
        log("A different process or task has already created " + "dir " + dir.getAbsolutePath(),Project.MSG_VERBOSE);
        return;
      }
      String msg="Directory " + dir.getAbsolutePath() + " creation was not successful for an unknown reason";
      throw new BuildException(msg,getLocation());
    }
    log("Created dir: " + dir.getAbsolutePath());
  }
 else {
    log("Skipping " + dir.getAbsolutePath() + " because it already exists.",Project.MSG_VERBOSE);
  }
}

=================================================
cloneset:14
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\ImportTask.java 
methodname : ImportTask.hasAlreadyBeenImported ( size:91 ) 
-------------------------------------
private boolean hasAlreadyBeenImported(Resource importedResource,Vector<Object> importStack){
  File importedFile=null;
  FileProvider fp=importedResource.as(FileProvider.class);
  if (fp != null) {
    importedFile=fp.getFile();
  }
  URL importedURL=null;
  URLProvider up=importedResource.as(URLProvider.class);
  if (up != null) {
    importedURL=up.getURL();
  }
  for (  Object o : importStack) {
    if (isOneOf(o,importedResource,importedFile,importedURL)) {
      return true;
    }
  }
  return false;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\ImportTask.java 
methodname : ImportTask.isOneOf ( size:114 ) 
-------------------------------------
private boolean isOneOf(Object o,Resource importedResource,File importedFile,URL importedURL){
  if (o.equals(importedResource) || o.equals(importedFile) || o.equals(importedURL)) {
    return true;
  }
  if (o instanceof Resource) {
    if (importedFile != null) {
      FileProvider fp=((Resource)o).as(FileProvider.class);
      if (fp != null && fp.getFile().equals(importedFile)) {
        return true;
      }
    }
    if (importedURL != null) {
      URLProvider up=((Resource)o).as(URLProvider.class);
      if (up != null && up.getURL().equals(importedURL)) {
        return true;
      }
    }
  }
  return false;
}

=================================================
cloneset:15
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\launcher\OS2CommandLauncher.java 
methodname : OS2CommandLauncher.exec ( size:152 ) 
-------------------------------------
/** 
 * Launches the given command in a new process, in the given
 * working directory.
 * @param projectthe Ant project.
 * @param cmdthe command line to execute as an array of strings.
 * @param envthe environment to set as an array of strings.
 * @param workingDirworking directory where the command should run.
 * @return the created Process.
 * @throws IOExceptionforwarded from the exec method of the command launcher.
 */
@Override public Process exec(Project project,String[] cmd,String[] env,File workingDir) throws IOException {
  File commandDir=workingDir;
  if (workingDir == null) {
    if (project != null) {
      commandDir=project.getBaseDir();
    }
 else {
      return exec(project,cmd,env);
    }
  }
  final int preCmdLength=7;
  final String cmdDir=commandDir.getAbsolutePath();
  String[] newcmd=new String[cmd.length + preCmdLength];
  newcmd[0]="cmd";
  newcmd[1]="/c";
  newcmd[2]=cmdDir.substring(0,2);
  newcmd[3]="&&";
  newcmd[4]="cd";
  newcmd[5]=cmdDir.substring(2);
  newcmd[6]="&&";
  System.arraycopy(cmd,0,newcmd,preCmdLength,cmd.length);
  return exec(project,newcmd,env);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\launcher\WinNTCommandLauncher.java 
methodname : WinNTCommandLauncher.exec ( size:132 ) 
-------------------------------------
/** 
 * Launches the given command in a new process, in the given
 * working directory.
 * @param projectthe Ant project.
 * @param cmdthe command line to execute as an array of strings.
 * @param envthe environment to set as an array of strings.
 * @param workingDirworking directory where the command should run.
 * @return the created Process.
 * @throws IOExceptionforwarded from the exec method of the command launcher.
 */
@Override public Process exec(Project project,String[] cmd,String[] env,File workingDir) throws IOException {
  File commandDir=workingDir;
  if (workingDir == null) {
    if (project != null) {
      commandDir=project.getBaseDir();
    }
 else {
      return exec(project,cmd,env);
    }
  }
  final int preCmdLength=6;
  String[] newcmd=new String[cmd.length + preCmdLength];
  newcmd[0]="cmd";
  newcmd[1]="/c";
  newcmd[2]="cd";
  newcmd[3]="/d";
  newcmd[4]=commandDir.getAbsolutePath();
  newcmd[5]="&&";
  System.arraycopy(cmd,0,newcmd,preCmdLength,cmd.length);
  return exec(project,newcmd,env);
}

=================================================
cloneset:16
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\launcher\PerlScriptCommandLauncher.java 
methodname : PerlScriptCommandLauncher.exec ( size:166 ) 
-------------------------------------
/** 
 * Launches the given command in a new process, in the given
 * working directory.
 * @param projectthe Ant project.
 * @param cmdthe command line to execute as an array of strings.
 * @param envthe environment to set as an array of strings.
 * @param workingDirworking directory where the command should run.
 * @return the created Process.
 * @throws IOExceptionforwarded from the exec method of the command launcher.
 */
@Override public Process exec(Project project,String[] cmd,String[] env,File workingDir) throws IOException {
  if (project == null) {
    if (workingDir == null) {
      return exec(project,cmd,env);
    }
    throw new IOException("Cannot locate antRun script: " + "No project provided");
  }
  String antHome=project.getProperty(MagicNames.ANT_HOME);
  if (antHome == null) {
    throw new IOException("Cannot locate antRun script: " + "Property '" + MagicNames.ANT_HOME + "' not found");
  }
  String antRun=FILE_UTILS.resolveFile(project.getBaseDir(),antHome + File.separator + myScript).toString();
  File commandDir=workingDir;
  if (workingDir == null) {
    commandDir=project.getBaseDir();
  }
  String[] newcmd=new String[cmd.length + 3];
  newcmd[0]="perl";
  newcmd[1]=antRun;
  newcmd[2]=commandDir.getAbsolutePath();
  System.arraycopy(cmd,0,newcmd,3,cmd.length);
  return exec(project,newcmd,env);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\launcher\ScriptCommandLauncher.java 
methodname : ScriptCommandLauncher.exec ( size:160 ) 
-------------------------------------
/** 
 * Launches the given command in a new process, in the given
 * working directory.
 * @param projectthe Ant project.
 * @param cmdthe command line to execute as an array of strings.
 * @param envthe environment to set as an array of strings.
 * @param workingDirworking directory where the command should run.
 * @return the created Process.
 * @throws IOExceptionforwarded from the exec method of the command launcher.
 */
@Override public Process exec(Project project,String[] cmd,String[] env,File workingDir) throws IOException {
  if (project == null) {
    if (workingDir == null) {
      return exec(project,cmd,env);
    }
    throw new IOException("Cannot locate antRun script: " + "No project provided");
  }
  String antHome=project.getProperty(MagicNames.ANT_HOME);
  if (antHome == null) {
    throw new IOException("Cannot locate antRun script: " + "Property '" + MagicNames.ANT_HOME + "' not found");
  }
  String antRun=FILE_UTILS.resolveFile(project.getBaseDir(),antHome + File.separator + myScript).toString();
  File commandDir=workingDir;
  if (workingDir == null) {
    commandDir=project.getBaseDir();
  }
  String[] newcmd=new String[cmd.length + 2];
  newcmd[0]=antRun;
  newcmd[1]=commandDir.getAbsolutePath();
  System.arraycopy(cmd,0,newcmd,2,cmd.length);
  return exec(project,newcmd,env);
}

=================================================
cloneset:17
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\launcher\VmsCommandLauncher.java 
methodname : VmsCommandLauncher.exec ( size:56 ) 
-------------------------------------
/** 
 * Launches the given command in a new process.
 * @param projectthe Ant project.
 * @param cmdthe command line to execute as an array of strings.
 * @param envthe environment to set as an array of strings.
 * @return the created Process.
 * @throws IOExceptionforwarded from the exec method of the command launcher.
 */
@Override public Process exec(Project project,String[] cmd,String[] env) throws IOException {
  File cmdFile=createCommandFile(cmd,env);
  Process p=super.exec(project,new String[]{cmdFile.getPath()},env);
  deleteAfter(cmdFile,p);
  return p;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\launcher\VmsCommandLauncher.java 
methodname : VmsCommandLauncher.exec ( size:61 ) 
-------------------------------------
/** 
 * Launches the given command in a new process, in the given
 * working directory. Note that under Java 1.4.0 and 1.4.1 on VMS
 * this method only works if <code>workingDir</code> is null or
 * the logical JAVA$FORK_SUPPORT_CHDIR needs to be set to TRUE.
 * @param projectthe Ant project.
 * @param cmdthe command line to execute as an array of strings.
 * @param envthe environment to set as an array of strings.
 * @param workingDirworking directory where the command should run.
 * @return the created Process.
 * @throws IOExceptionforwarded from the exec method of the command launcher.
 */
@Override public Process exec(Project project,String[] cmd,String[] env,File workingDir) throws IOException {
  File cmdFile=createCommandFile(cmd,env);
  Process p=super.exec(project,new String[]{cmdFile.getPath()},env,workingDir);
  deleteAfter(cmdFile,p);
  return p;
}

=================================================
cloneset:18
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ANTLR.java 
methodname : ANTLR.addClasspathEntry ( size:74 ) 
-------------------------------------
/** 
 * Search for the given resource and add the directory or archive
 * that contains it to the classpath.
 * <p>Doesn't work for archives in JDK 1.1 as the URL returned by
 * getResource doesn't contain the name of the archive.</p>
 * @param resource the resource name to search for
 */
protected void addClasspathEntry(String resource){
  if (resource.startsWith("/")) {
    resource=resource.substring(1);
  }
 else {
    resource="org/apache/tools/ant/taskdefs/optional/" + resource;
  }
  File f=LoaderUtils.getResourceSource(getClass().getClassLoader(),resource);
  if (f != null) {
    log("Found " + f.getAbsolutePath(),Project.MSG_DEBUG);
    createClasspath().setLocation(f);
  }
 else {
    log("Couldn\'t find " + resource,Project.MSG_VERBOSE);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\jdepend\JDependTask.java 
methodname : JDependTask.addClasspathEntry ( size:75 ) 
-------------------------------------
/** 
 * Search for the given resource and add the directory or archive
 * that contains it to the classpath.
 * <p>Doesn't work for archives in JDK 1.1 as the URL returned by
 * getResource doesn't contain the name of the archive.</p>
 * @param resource resource that one wants to lookup
 * @since Ant 1.6
 */
private void addClasspathEntry(String resource){
  if (resource.startsWith("/")) {
    resource=resource.substring(1);
  }
 else {
    resource="org/apache/tools/ant/taskdefs/optional/jdepend/" + resource;
  }
  File f=LoaderUtils.getResourceSource(getClass().getClassLoader(),resource);
  if (f != null) {
    log("Found " + f.getAbsolutePath(),Project.MSG_DEBUG);
    runtimeClasses.createPath().setLocation(f);
  }
 else {
    log("Couldn\'t find " + resource,Project.MSG_DEBUG);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\junit\JUnitTask.java 
methodname : JUnitTask.addClasspathResource ( size:80 ) 
-------------------------------------
/** 
 * Implementation of addClasspathEntry.
 * @param resource resource that one wants to lookup
 * @return true if something was in fact added
 * @since Ant 1.7.1
 */
private boolean addClasspathResource(String resource){
  if (resource.startsWith("/")) {
    resource=resource.substring(1);
  }
 else {
    resource="org/apache/tools/ant/taskdefs/optional/junit/" + resource;
  }
  File f=LoaderUtils.getResourceSource(JUnitTask.class.getClassLoader(),resource);
  if (f != null) {
    log("Found " + f.getAbsolutePath(),Project.MSG_DEBUG);
    antRuntimeClasses.createPath().setLocation(f);
    return true;
  }
 else {
    log("Couldn\'t find " + resource,Project.MSG_DEBUG);
    return false;
  }
}

=================================================
cloneset:19
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ccm\CCMCheck.java 
methodname : CCMCheck.doit ( size:61 ) 
-------------------------------------
/** 
 * check the file given by getFile().
 */
private void doit(){
  Commandline commandLine=new Commandline();
  commandLine.setExecutable(getCcmCommand());
  commandLine.createArgument().setValue(getCcmAction());
  checkOptions(commandLine);
  int result=run(commandLine);
  if (Execute.isFailure(result)) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ccm\CCMReconfigure.java 
methodname : CCMReconfigure.execute ( size:66 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute ccm and then calls Exec's run method
 * to execute the command line.
 * </p>
 * @throws BuildException on error
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  int result=0;
  commandLine.setExecutable(getCcmCommand());
  commandLine.createArgument().setValue(getCcmAction());
  checkOptions(commandLine);
  result=run(commandLine);
  if (Execute.isFailure(result)) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCRmtype.java 
methodname : CCRmtype.checkOptions ( size:75 ) 
-------------------------------------
/** 
 * Check the command line options.
 */
private void checkOptions(Commandline cmd){
  if (getIgnore()) {
    cmd.createArgument().setValue(FLAG_IGNORE);
  }
  if (getRmAll()) {
    cmd.createArgument().setValue(FLAG_RMALL);
    cmd.createArgument().setValue(FLAG_FORCE);
  }
  if (getComment() != null) {
    getCommentCommand(cmd);
  }
 else {
    if (getCommentFile() != null) {
      getCommentFileCommand(cmd);
    }
 else {
      cmd.createArgument().setValue(FLAG_NOCOMMENT);
    }
  }
  cmd.createArgument().setValue(getTypeSpecifier());
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCMkdir.java 
methodname : CCMkdir.checkOptions ( size:57 ) 
-------------------------------------
/** 
 * Check the command line options.
 */
private void checkOptions(Commandline cmd){
  if (getComment() != null) {
    getCommentCommand(cmd);
  }
 else {
    if (getCommentFile() != null) {
      getCommentFileCommand(cmd);
    }
 else {
      cmd.createArgument().setValue(FLAG_NOCOMMENT);
    }
  }
  if (getNoCheckout()) {
    cmd.createArgument().setValue(FLAG_NOCHECKOUT);
  }
  cmd.createArgument().setValue(getViewPath());
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCCheckin.java 
methodname : CCCheckin.execute ( size:106 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_CHECKIN);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCMkelem.java 
methodname : CCMkelem.execute ( size:106 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_MKELEM);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCUnCheckout.java 
methodname : CCUnCheckout.execute ( size:106 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_UNCHECKOUT);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCUpdate.java 
methodname : CCUpdate.execute ( size:117 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_UPDATE);
  checkOptions(commandLine);
  getProject().log(commandLine.toString(),Project.MSG_DEBUG);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCMklabel.java 
methodname : CCMklabel.execute ( size:117 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getTypeName() == null) {
    throw new BuildException("Required attribute TypeName not specified");
  }
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_MKLABEL);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCLock.java 
methodname : CCLock.execute ( size:106 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_LOCK);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getOpType(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCUnlock.java 
methodname : CCUnlock.execute ( size:106 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_UNLOCK);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getOpType(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCMkbl.java 
methodname : CCMkbl.execute ( size:106 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_MKBL);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getBaselineRootName(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCCheckout.java 
methodname : CCCheckout.execute ( size:127 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_CHECKOUT);
  checkOptions(commandLine);
  if (!getNotco() && lsCheckout()) {
    getProject().log("Already checked out in this view: " + getViewPathBasename(),Project.MSG_VERBOSE);
    return;
  }
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCMkattr.java 
methodname : CCMkattr.execute ( size:128 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  Project aProj=getProject();
  int result=0;
  if (getTypeName() == null) {
    throw new BuildException("Required attribute TypeName not specified");
  }
  if (getTypeValue() == null) {
    throw new BuildException("Required attribute TypeValue not specified");
  }
  if (getViewPath() == null) {
    setViewPath(aProj.getBaseDir().getPath());
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_MKATTR);
  checkOptions(commandLine);
  if (!getFailOnErr()) {
    getProject().log("Ignoring any errors that occur for: " + getViewPathBasename(),Project.MSG_VERBOSE);
  }
  result=run(commandLine);
  if (Execute.isFailure(result) && getFailOnErr()) {
    String msg="Failed executing: " + commandLine.toString();
    throw new BuildException(msg,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\CCMklbtype.java 
methodname : CCMklbtype.execute ( size:96 ) 
-------------------------------------
/** 
 * Executes the task.
 * <p>
 * Builds a command line to execute cleartool and then calls Exec's run method
 * to execute the command line.
 * @throws BuildException if the command fails and failonerr is set to true
 */
public void execute() throws BuildException {
  Commandline commandLine=new Commandline();
  int result=0;
  if (getTypeName() == null) {
    throw new BuildException("Required attribute TypeName not specified");
  }
  commandLine.setExecutable(getClearToolCommand());
  commandLine.createArgument().setValue(COMMAND_MKLBTYPE);
  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());
  }
}

=================================================
cloneset:20
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ccm\Continuus.java 
methodname : Continuus.run ( size:66 ) 
-------------------------------------
/** 
 * Run the command.
 * @param cmd the command line
 * @param handler an execute stream handler
 * @return the exit status of the command
 */
protected int run(Commandline cmd,ExecuteStreamHandler handler){
  try {
    Execute exe=new Execute(handler);
    exe.setAntRun(getProject());
    exe.setWorkingDirectory(getProject().getBaseDir());
    exe.setCommandline(cmd.getCommandline());
    return exe.execute();
  }
 catch (  java.io.IOException e) {
    throw new BuildException(e,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\sos\SOS.java 
methodname : SOS.run ( size:76 ) 
-------------------------------------
/** 
 * Execute the created command line.
 * @param cmd              The command line to run.
 * @return                  int the exit code.
 * @throws BuildException
 */
protected int run(Commandline cmd){
  try {
    Execute exe=new Execute(new LogStreamHandler(this,Project.MSG_INFO,Project.MSG_WARN));
    exe.setAntRun(getProject());
    exe.setWorkingDirectory(getProject().getBaseDir());
    exe.setCommandline(cmd.getCommandline());
    exe.setVMLauncher(false);
    return exe.execute();
  }
 catch (  java.io.IOException e) {
    throw new BuildException(e,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\ClearCase.java 
methodname : ClearCase.run ( size:76 ) 
-------------------------------------
/** 
 * Execute the given command are return success or failure
 * @param cmd command line to execute
 * @return the exit status of the subprocess or <code>INVALID</code>
 */
protected int run(Commandline cmd){
  try {
    Project aProj=getProject();
    Execute exe=new Execute(new LogStreamHandler(this,Project.MSG_INFO,Project.MSG_WARN));
    exe.setAntRun(aProj);
    exe.setWorkingDirectory(aProj.getBaseDir());
    exe.setCommandline(cmd.getCommandline());
    return exe.execute();
  }
 catch (  java.io.IOException e) {
    throw new BuildException(e,getLocation());
  }
}

=================================================
cloneset:21
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\clearcase\ClearCase.java 
methodname : ClearCase.run ( size:76 ) 
-------------------------------------
/** 
 * Execute the given command are return success or failure
 * @param cmd command line to execute
 * @return the exit status of the subprocess or <code>INVALID</code>
 */
protected int run(Commandline cmd){
  try {
    Project aProj=getProject();
    Execute exe=new Execute(new LogStreamHandler(this,Project.MSG_INFO,Project.MSG_WARN));
    exe.setAntRun(aProj);
    exe.setWorkingDirectory(aProj.getBaseDir());
    exe.setCommandline(cmd.getCommandline());
    return exe.execute();
  }
 catch (  java.io.IOException e) {
    throw new BuildException(e,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\pvcs\Pvcs.java 
methodname : Pvcs.runCmd ( size:85 ) 
-------------------------------------
/** 
 * Run the command.
 * @param cmd the command line to use.
 * @param out the output stream handler to use.
 * @return the exit code of the command.
 */
protected int runCmd(Commandline cmd,ExecuteStreamHandler out){
  try {
    Project aProj=getProject();
    Execute exe=new Execute(out);
    exe.setAntRun(aProj);
    exe.setWorkingDirectory(aProj.getBaseDir());
    exe.setCommandline(cmd.getCommandline());
    return exe.execute();
  }
 catch (  java.io.IOException e) {
    String msg="Failed executing: " + cmd.toString() + ". Exception: "+ e.getMessage();
    throw new BuildException(msg,getLocation());
  }
}

=================================================
cloneset:22
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\depend\constantpool\FieldRefCPInfo.java 
methodname : FieldRefCPInfo.resolve ( size:65 ) 
-------------------------------------
/** 
 * Resolve this constant pool entry with respect to its dependents in
 * the constant pool.
 * @param constantPool the constant pool of which this entry is a member
 * and against which this entry is to be resolved.
 */
public void resolve(ConstantPool constantPool){
  ClassCPInfo fieldClass=(ClassCPInfo)constantPool.getEntry(classIndex);
  fieldClass.resolve(constantPool);
  fieldClassName=fieldClass.getClassName();
  NameAndTypeCPInfo nt=(NameAndTypeCPInfo)constantPool.getEntry(nameAndTypeIndex);
  nt.resolve(constantPool);
  fieldName=nt.getName();
  fieldType=nt.getType();
  super.resolve(constantPool);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\depend\constantpool\MethodRefCPInfo.java 
methodname : MethodRefCPInfo.resolve ( size:65 ) 
-------------------------------------
/** 
 * Resolve this constant pool entry with respect to its dependents in
 * the constant pool.
 * @param constantPool the constant pool of which this entry is a member
 * and against which this entry is to be resolved.
 */
public void resolve(ConstantPool constantPool){
  ClassCPInfo methodClass=(ClassCPInfo)constantPool.getEntry(classIndex);
  methodClass.resolve(constantPool);
  methodClassName=methodClass.getClassName();
  NameAndTypeCPInfo nt=(NameAndTypeCPInfo)constantPool.getEntry(nameAndTypeIndex);
  nt.resolve(constantPool);
  methodName=nt.getName();
  methodType=nt.getType();
  super.resolve(constantPool);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\depend\constantpool\InterfaceMethodRefCPInfo.java 
methodname : InterfaceMethodRefCPInfo.resolve ( size:65 ) 
-------------------------------------
/** 
 * Resolve this constant pool entry with respect to its dependents in
 * the constant pool.
 * @param constantPool the constant pool of which this entry is a member
 * and against which this entry is to be resolved.
 */
public void resolve(ConstantPool constantPool){
  ClassCPInfo interfaceMethodClass=(ClassCPInfo)constantPool.getEntry(classIndex);
  interfaceMethodClass.resolve(constantPool);
  interfaceMethodClassName=interfaceMethodClass.getClassName();
  NameAndTypeCPInfo nt=(NameAndTypeCPInfo)constantPool.getEntry(nameAndTypeIndex);
  nt.resolve(constantPool);
  interfaceMethodName=nt.getName();
  interfaceMethodType=nt.getType();
  super.resolve(constantPool);
}

=================================================
cloneset:23
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\BorlandDeploymentTool.java 
methodname : BorlandDeploymentTool.verifyBorlandJarV5 ( size:136 ) 
-------------------------------------
/** 
 * Verify the produced jar file by invoking the Borland iastool tool
 * @param sourceJar java.io.File representing the produced jar file
 */
private void verifyBorlandJarV5(File sourceJar){
  log("verify BES " + sourceJar,Project.MSG_INFO);
  try {
    ExecTask execTask=null;
    execTask=new ExecTask(getTask());
    execTask.setDir(new File("."));
    execTask.setExecutable("iastool");
    if (getCombinedClasspath() != null) {
      execTask.createArg().setValue("-VBJclasspath");
      execTask.createArg().setValue(getCombinedClasspath().toString());
    }
    if (java2iiopdebug) {
      execTask.createArg().setValue("-debug");
    }
    execTask.createArg().setValue("-verify");
    execTask.createArg().setValue("-src");
    execTask.createArg().setValue(sourceJar.getPath());
    log("Calling iastool",Project.MSG_VERBOSE);
    execTask.execute();
  }
 catch (  Exception e) {
    String msg="Exception while calling generateclient Details: " + e.toString();
    throw new BuildException(msg,e);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\BorlandGenerateClient.java 
methodname : BorlandGenerateClient.executeForkV5 ( size:139 ) 
-------------------------------------
/** 
 * launch the generate client using system api.
 * @throws BuildException if there is an error.
 */
protected void executeForkV5() throws BuildException {
  try {
    log("mode : fork " + BorlandDeploymentTool.BES,Project.MSG_DEBUG);
    ExecTask execTask=new ExecTask(this);
    execTask.setDir(new File("."));
    execTask.setExecutable("iastool");
    if (debug) {
      execTask.createArg().setValue("-debug");
    }
    execTask.createArg().setValue("-genclient");
    execTask.createArg().setValue("-jars");
    execTask.createArg().setValue(ejbjarfile.getAbsolutePath());
    execTask.createArg().setValue("-target");
    execTask.createArg().setValue(clientjarfile.getAbsolutePath());
    execTask.createArg().setValue("-cp");
    execTask.createArg().setValue(classpath.toString());
    log("Calling iastool",Project.MSG_VERBOSE);
    execTask.execute();
  }
 catch (  Exception e) {
    String msg="Exception while calling generateclient Details: " + e.toString();
    throw new BuildException(msg,e);
  }
}

=================================================
cloneset:24
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\DescriptorHandler.java 
methodname : DescriptorHandler.startElement ( size:109 ) 
-------------------------------------
/** 
 * SAX parser call-back method that is invoked when a new element is entered
 * into.  Used to store the context (attribute name) in the currentAttribute
 * instance variable.
 * @param name The name of the element being entered.
 * @param attrs Attributes associated to the element.
 * @throws SAXException on error
 */
public void startElement(String name,AttributeList attrs) throws SAXException {
  this.currentElement=name;
  currentText="";
  if (name.equals(EJB_REF) || name.equals(EJB_LOCAL_REF)) {
    inEJBRef=true;
  }
 else   if (parseState == STATE_LOOKING_EJBJAR && name.equals(EJB_JAR)) {
    parseState=STATE_IN_EJBJAR;
  }
 else   if (parseState == STATE_IN_EJBJAR && name.equals(ENTERPRISE_BEANS)) {
    parseState=STATE_IN_BEANS;
  }
 else   if (parseState == STATE_IN_BEANS && name.equals(SESSION_BEAN)) {
    parseState=STATE_IN_SESSION;
  }
 else   if (parseState == STATE_IN_BEANS && name.equals(ENTITY_BEAN)) {
    parseState=STATE_IN_ENTITY;
  }
 else   if (parseState == STATE_IN_BEANS && name.equals(MESSAGE_BEAN)) {
    parseState=STATE_IN_MESSAGE;
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\DescriptorHandler.java 
methodname : DescriptorHandler.endElement ( size:108 ) 
-------------------------------------
/** 
 * SAX parser call-back method that is invoked when an element is exited.
 * Used to blank out (set to the empty string, not nullify) the name of
 * the currentAttribute.  A better method would be to use a stack as an
 * instance variable, however since we are only interested in leaf-node
 * data this is a simpler and workable solution.
 * @param name The name of the attribute being exited. Ignored
 * in this implementation.
 * @throws SAXException on error
 */
public void endElement(String name) throws SAXException {
  processElement();
  currentText="";
  this.currentElement="";
  if (name.equals(EJB_REF) || name.equals(EJB_LOCAL_REF)) {
    inEJBRef=false;
  }
 else   if (parseState == STATE_IN_ENTITY && name.equals(ENTITY_BEAN)) {
    parseState=STATE_IN_BEANS;
  }
 else   if (parseState == STATE_IN_SESSION && name.equals(SESSION_BEAN)) {
    parseState=STATE_IN_BEANS;
  }
 else   if (parseState == STATE_IN_MESSAGE && name.equals(MESSAGE_BEAN)) {
    parseState=STATE_IN_BEANS;
  }
 else   if (parseState == STATE_IN_BEANS && name.equals(ENTERPRISE_BEANS)) {
    parseState=STATE_IN_EJBJAR;
  }
 else   if (parseState == STATE_IN_EJBJAR && name.equals(EJB_JAR)) {
    parseState=STATE_LOOKING_EJBJAR;
  }
}

=================================================
cloneset:25
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\EjbJar.java 
methodname : EjbJar.setBasejarname ( size:66 ) 
-------------------------------------
/** 
 * Set the base name of the EJB JAR that is to be created if it is not
 * to be determined from the name of the deployment descriptor files.
 * @param inValue the basename that will be used when writing the jar
 * file containing the EJB
 */
public void setBasejarname(String inValue){
  config.baseJarName=inValue;
  if (config.namingScheme == null) {
    config.namingScheme=new NamingScheme();
    config.namingScheme.setValue(NamingScheme.BASEJARNAME);
  }
 else   if (!config.namingScheme.getValue().equals(NamingScheme.BASEJARNAME)) {
    throw new BuildException("The basejarname attribute is not " + "compatible with the " + config.namingScheme.getValue() + " naming scheme");
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\EjbJar.java 
methodname : EjbJar.validateConfig ( size:82 ) 
-------------------------------------
/** 
 * Validate the config that has been configured from the build file
 * @throws BuildException if the config is not valid
 */
private void validateConfig() throws BuildException {
  if (config.srcDir == null) {
    throw new BuildException("The srcDir attribute must be specified");
  }
  if (config.descriptorDir == null) {
    config.descriptorDir=config.srcDir;
  }
  if (config.namingScheme == null) {
    config.namingScheme=new NamingScheme();
    config.namingScheme.setValue(NamingScheme.DESCRIPTOR);
  }
 else   if (config.namingScheme.getValue().equals(NamingScheme.BASEJARNAME) && config.baseJarName == null) {
    throw new BuildException("The basejarname attribute must " + "be specified with the basejarname naming scheme");
  }
}

=================================================
cloneset:26
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\GenericDeploymentTool.java 
methodname : GenericDeploymentTool.getDescriptorHandler ( size:68 ) 
-------------------------------------
/** 
 * Get a descriptionHandler.
 * @param srcDir the source directory.
 * @return a handler.
 */
protected DescriptorHandler getDescriptorHandler(File srcDir){
  DescriptorHandler h=new DescriptorHandler(getTask(),srcDir);
  registerKnownDTDs(h);
  for (Iterator i=getConfig().dtdLocations.iterator(); i.hasNext(); ) {
    EjbJar.DTDLocation dtdLocation=(EjbJar.DTDLocation)i.next();
    h.registerDTD(dtdLocation.getPublicId(),dtdLocation.getLocation());
  }
  return h;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\WebsphereDeploymentTool.java 
methodname : WebsphereDeploymentTool.getWebsphereDescriptorHandler ( size:71 ) 
-------------------------------------
/** 
 * Get a description handler.
 * @param srcDir the source directory.
 * @return the handler.
 */
protected DescriptorHandler getWebsphereDescriptorHandler(final File srcDir){
  DescriptorHandler handler=new DescriptorHandler(getTask(),srcDir){
    protected void processElement(){
    }
  }
;
  for (Iterator i=getConfig().dtdLocations.iterator(); i.hasNext(); ) {
    EjbJar.DTDLocation dtdLocation=(EjbJar.DTDLocation)i.next();
    handler.registerDTD(dtdLocation.getPublicId(),dtdLocation.getLocation());
  }
  return handler;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\JonasDeploymentTool.java 
methodname : JonasDeploymentTool.writeJar ( size:70 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
protected void writeJar(String baseName,File jarfile,Hashtable ejbFiles,String publicId) throws BuildException {
  File genericJarFile=super.getVendorOutputJarFile(baseName);
  super.writeJar(baseName,genericJarFile,ejbFiles,publicId);
  addGenICGeneratedFiles(genericJarFile,ejbFiles);
  super.writeJar(baseName,getVendorOutputJarFile(baseName),ejbFiles,publicId);
  if (!keepgeneric) {
    log("Deleting generic JAR " + genericJarFile.toString(),Project.MSG_VERBOSE);
    genericJarFile.delete();
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ejb\WeblogicDeploymentTool.java 
methodname : WeblogicDeploymentTool.writeJar ( size:70 ) 
-------------------------------------
/** 
 * Method used to encapsulate the writing of the JAR file. Iterates over
 * the filenames/java.io.Files in the Hashtable stored on the instance
 * variable ejbFiles.
 * @param baseName the base name.
 * @param jarFile the jar file to populate.
 * @param files   the hash table of files to write.
 * @param publicId the id to use.
 * @throws BuildException if there is a problem.
 */
protected void writeJar(String baseName,File jarFile,Hashtable files,String publicId) throws BuildException {
  File genericJarFile=super.getVendorOutputJarFile(baseName);
  super.writeJar(baseName,genericJarFile,files,publicId);
  if (alwaysRebuild || isRebuildRequired(genericJarFile,jarFile)) {
    buildWeblogicJar(genericJarFile,jarFile,publicId);
  }
  if (!keepGeneric) {
    log("deleting generic jar " + genericJarFile.toString(),Project.MSG_VERBOSE);
    genericJarFile.delete();
  }
}

=================================================
cloneset:27
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\extension\Extension.java 
methodname : Extension.toString ( size:208 ) 
-------------------------------------
/** 
 * Return a String representation of this object.
 * @return string representation of object.
 */
public String toString(){
  final String brace=": ";
  final StringBuffer sb=new StringBuffer(EXTENSION_NAME.toString());
  sb.append(brace);
  sb.append(extensionName);
  sb.append(StringUtils.LINE_SEP);
  if (null != specificationVersion) {
    sb.append(SPECIFICATION_VERSION);
    sb.append(brace);
    sb.append(specificationVersion);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != specificationVendor) {
    sb.append(SPECIFICATION_VENDOR);
    sb.append(brace);
    sb.append(specificationVendor);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationVersion) {
    sb.append(IMPLEMENTATION_VERSION);
    sb.append(brace);
    sb.append(implementationVersion);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationVendorID) {
    sb.append(IMPLEMENTATION_VENDOR_ID);
    sb.append(brace);
    sb.append(implementationVendorID);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationVendor) {
    sb.append(IMPLEMENTATION_VENDOR);
    sb.append(brace);
    sb.append(implementationVendor);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationURL) {
    sb.append(IMPLEMENTATION_URL);
    sb.append(brace);
    sb.append(implementationURL);
    sb.append(StringUtils.LINE_SEP);
  }
  return sb.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\extension\Specification.java 
methodname : Specification.toString ( size:181 ) 
-------------------------------------
/** 
 * Return a String representation of this object.
 * @return string representation of object.
 */
public String toString(){
  final String brace=": ";
  final StringBuffer sb=new StringBuffer(SPECIFICATION_TITLE.toString());
  sb.append(brace);
  sb.append(specificationTitle);
  sb.append(StringUtils.LINE_SEP);
  if (null != specificationVersion) {
    sb.append(SPECIFICATION_VERSION);
    sb.append(brace);
    sb.append(specificationVersion);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != specificationVendor) {
    sb.append(SPECIFICATION_VENDOR);
    sb.append(brace);
    sb.append(specificationVendor);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationTitle) {
    sb.append(IMPLEMENTATION_TITLE);
    sb.append(brace);
    sb.append(implementationTitle);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationVersion) {
    sb.append(IMPLEMENTATION_VERSION);
    sb.append(brace);
    sb.append(implementationVersion);
    sb.append(StringUtils.LINE_SEP);
  }
  if (null != implementationVendor) {
    sb.append(IMPLEMENTATION_VENDOR);
    sb.append(brace);
    sb.append(implementationVendor);
    sb.append(StringUtils.LINE_SEP);
  }
  return sb.toString();
}

=================================================
cloneset:28
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\extension\JarLibAvailableTask.java 
methodname : JarLibAvailableTask.validate ( size:94 ) 
-------------------------------------
/** 
 * Validate the tasks parameters.
 * @throws BuildException if invalid parameters found
 */
private void validate() throws BuildException {
  if (null == requiredExtension) {
    final String message="Extension element must be specified.";
    throw new BuildException(message);
  }
  if (null == libraryFile && extensionFileSets.isEmpty()) {
    final String message="File attribute not specified.";
    throw new BuildException(message);
  }
  if (null != libraryFile && !libraryFile.exists()) {
    final String message="File '" + libraryFile + "' does not exist.";
    throw new BuildException(message);
  }
  if (null != libraryFile && !libraryFile.isFile()) {
    final String message="\'" + libraryFile + "\' is not a file.";
    throw new BuildException(message);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\extension\JarLibDisplayTask.java 
methodname : JarLibDisplayTask.validate ( size:77 ) 
-------------------------------------
/** 
 * Validate the tasks parameters.
 * @throws BuildException if invalid parameters found
 */
private void validate() throws BuildException {
  if (null == libraryFile && libraryFileSets.isEmpty()) {
    final String message="File attribute not specified.";
    throw new BuildException(message);
  }
  if (null != libraryFile && !libraryFile.exists()) {
    final String message="File '" + libraryFile + "' does not exist.";
    throw new BuildException(message);
  }
  if (null != libraryFile && !libraryFile.isFile()) {
    final String message="\'" + libraryFile + "\' is not a file.";
    throw new BuildException(message);
  }
}

=================================================
cloneset:29
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\javah\Gcjh.java 
methodname : Gcjh.compile ( size:51 ) 
-------------------------------------
/** 
 * Performs the actual compilation.
 */
public boolean compile(Javah javah) throws BuildException {
  Commandline cmd=setupGcjhCommand(javah);
  try {
    Execute.runCommand(javah,cmd.getCommandline());
    return true;
  }
 catch (  BuildException e) {
    if (e.getMessage().indexOf("failed with return code") == -1) {
      throw e;
    }
  }
  return false;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\javah\Kaffeh.java 
methodname : Kaffeh.compile ( size:51 ) 
-------------------------------------
/** 
 * Performs the actual compilation.
 * @param javah the calling javah task.
 * @return true if the compilation was successful.
 * @throws BuildException if there is an error.
 * @since Ant 1.6.3
 */
public boolean compile(Javah javah) throws BuildException {
  Commandline cmd=setupKaffehCommand(javah);
  try {
    Execute.runCommand(javah,cmd.getCommandline());
    return true;
  }
 catch (  BuildException e) {
    if (e.getMessage().indexOf("failed with return code") == -1) {
      throw e;
    }
  }
  return false;
}

=================================================
cloneset:30
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\jsp\Jasper41Mangler.java 
methodname : Jasper41Mangler.mangleChar ( size:94 ) 
-------------------------------------
/** 
 * Mangle the specified character to create a legal Java class name.
 */
private static String mangleChar(char ch){
  String s=Integer.toHexString(ch);
  int nzeros=5 - s.length();
  char[] result=new char[6];
  result[0]='_';
  for (int i=1; i <= nzeros; i++) {
    result[i]='0';
  }
  for (int i=nzeros + 1, j=0; i < 6; i++, j++) {
    result[i]=s.charAt(j);
  }
  return new String(result);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\jsp\JspNameMangler.java 
methodname : JspNameMangler.mangleChar ( size:106 ) 
-------------------------------------
/** 
 * definition of the char escaping algorithm
 * @param ch char to mangle
 * @return mangled string; 5 digit hex value
 */
private static String mangleChar(char ch){
  if (ch == File.separatorChar) {
    ch='/';
  }
  String s=Integer.toHexString(ch);
  int nzeros=5 - s.length();
  char[] result=new char[6];
  result[0]='_';
  for (int i=1; i <= nzeros; ++i) {
    result[i]='0';
  }
  int resultIndex=0;
  for (int i=nzeros + 1; i < 6; ++i) {
    result[i]=s.charAt(resultIndex++);
  }
  return new String(result);
}

=================================================
cloneset:31
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\junit\BriefJUnitResultFormatter.java 
methodname : BriefJUnitResultFormatter.startTestSuite ( size:62 ) 
-------------------------------------
/** 
 * The whole testsuite started.
 * @param suite the test suite
 */
public void startTestSuite(JUnitTest suite){
  if (output == null) {
    return;
  }
  StringBuffer sb=new StringBuffer("Testsuite: ");
  sb.append(suite.getName());
  sb.append(StringUtils.LINE_SEP);
  try {
    output.write(sb.toString());
    output.flush();
  }
 catch (  IOException ex) {
    throw new BuildException(ex);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\junit\PlainJUnitResultFormatter.java 
methodname : PlainJUnitResultFormatter.startTestSuite ( size:66 ) 
-------------------------------------
/** 
 * The whole testsuite started.
 * @param suite the test suite
 * @throws BuildException if unable to write the output
 */
public void startTestSuite(JUnitTest suite) throws BuildException {
  if (out == null) {
    return;
  }
  StringBuffer sb=new StringBuffer("Testsuite: ");
  sb.append(suite.getName());
  sb.append(StringUtils.LINE_SEP);
  try {
    out.write(sb.toString().getBytes());
    out.flush();
  }
 catch (  IOException ex) {
    throw new BuildException("Unable to write output",ex);
  }
}

=================================================
cloneset:32
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\junit\JUnit4TestMethodAdapter.java 
methodname : JUnit4TestMethodAdapter.toString ( size:76 ) 
-------------------------------------
public String toString(){
  String testClassName=testClass.getName();
  StringBuilder buf=new StringBuilder(testClassName.length() + 12 * methodNames.length).append(':');
  if (methodNames.length != 0) {
    buf.append(methodNames[0]);
    for (int i=1; i < methodNames.length; i++) {
      buf.append(',').append(methodNames[i]);
    }
  }
  return buf.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\junit\JUnit4TestMethodAdapter.java 
methodname : JUnit4TestMethodAdapter.MultipleMethodsFilter.describe ( size:93 ) 
-------------------------------------
public String describe(){
  StringBuilder buf=new StringBuilder(40);
  if (methodNames.length == 0) {
    buf.append("No methods");
  }
 else {
    buf.append(methodNames.length == 1 ? "Method" : "Methods");
    buf.append(' ');
    buf.append(methodNames[0]);
    for (int i=1; i < methodNames.length; i++) {
      buf.append(',').append(methodNames[i]);
    }
  }
  buf.append('(').append(testClass.getName()).append(')');
  return buf.toString();
}

=================================================
cloneset:33
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\net\FTP.java 
methodname : FTP.FTPDirectoryScanner.scan ( size:109 ) 
-------------------------------------
/** 
 * scans the remote directory,
 * storing internally the included files, directories, ...
 */
public void scan(){
  if (includes == null) {
    includes=new String[1];
    includes[0]="**";
  }
  if (excludes == null) {
    excludes=new String[0];
  }
  filesIncluded=new VectorSet();
  filesNotIncluded=new Vector();
  filesExcluded=new VectorSet();
  dirsIncluded=new VectorSet();
  dirsNotIncluded=new Vector();
  dirsExcluded=new VectorSet();
  try {
    String cwd=ftp.printWorkingDirectory();
    forceRemoteSensitivityCheck();
    checkIncludePatterns();
    clearCaches();
    ftp.changeWorkingDirectory(cwd);
  }
 catch (  IOException e) {
    throw new BuildException("Unable to scan FTP server: ",e);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\net\FTPTaskMirrorImpl.java 
methodname : FTPTaskMirrorImpl.FTPDirectoryScanner.scan ( size:109 ) 
-------------------------------------
/** 
 * scans the remote directory,
 * storing internally the included files, directories, ...
 */
public void scan(){
  if (includes == null) {
    includes=new String[1];
    includes[0]="**";
  }
  if (excludes == null) {
    excludes=new String[0];
  }
  filesIncluded=new VectorSet();
  filesNotIncluded=new Vector();
  filesExcluded=new VectorSet();
  dirsIncluded=new VectorSet();
  dirsNotIncluded=new Vector();
  dirsExcluded=new VectorSet();
  try {
    String cwd=ftp.printWorkingDirectory();
    forceRemoteSensitivityCheck();
    checkIncludePatterns();
    clearCaches();
    ftp.changeWorkingDirectory(cwd);
  }
 catch (  IOException e) {
    throw new BuildException("Unable to scan FTP server: ",e);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\net\FTPTask.java 
methodname : FTPTask.setRetriesAllowed ( size:67 ) 
-------------------------------------
/** 
 * Defines how many times to retry executing FTP command before giving up.
 * Default is 0 - try once and if failure then give up.
 * @param retriesAllowed number of retries to allow.  -1 means
 * keep trying forever. "forever" may also be specified as a
 * synonym for -1.
 */
public void setRetriesAllowed(String retriesAllowed){
  if ("FOREVER".equalsIgnoreCase(retriesAllowed)) {
    this.retriesAllowed=Retryable.RETRY_FOREVER;
  }
 else {
    try {
      int retries=Integer.parseInt(retriesAllowed);
      if (retries < Retryable.RETRY_FOREVER) {
        throw new BuildException("Invalid value for retriesAllowed attribute: " + retriesAllowed);
      }
      this.retriesAllowed=retries;
    }
 catch (    NumberFormatException px) {
      throw new BuildException("Invalid value for retriesAllowed attribute: " + retriesAllowed);
    }
  }
}

=================================================
cloneset:34
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\net\RExecTask.java 
methodname : RExecTask.AntRExecClient.waitForString ( size:187 ) 
-------------------------------------
/** 
 * Read from the rexec session until the string we are
 * waiting for is found or the timeout has been reached
 * @param s The string to wait on
 * @param timeout The maximum number of seconds to wait
 */
public void waitForString(String s,Integer timeout){
  InputStream is=this.getInputStream();
  try {
    StringBuffer sb=new StringBuffer();
    int windowStart=-s.length();
    if (timeout == null || timeout.intValue() == 0) {
      while (windowStart < 0 || !sb.substring(windowStart).equals(s)) {
        sb.append((char)is.read());
        windowStart++;
      }
    }
 else {
      Calendar endTime=Calendar.getInstance();
      endTime.add(Calendar.SECOND,timeout.intValue());
      while (windowStart < 0 || !sb.substring(windowStart).equals(s)) {
        while (Calendar.getInstance().before(endTime) && is.available() == 0) {
          Thread.sleep(PAUSE_TIME);
        }
        if (is.available() == 0) {
          throw new BuildException("Response timed-out waiting for \"" + s + '\"',getLocation());
        }
        sb.append((char)is.read());
        windowStart++;
      }
    }
    log(sb.toString(),Project.MSG_INFO);
  }
 catch (  BuildException be) {
    throw be;
  }
catch (  Exception e) {
    throw new BuildException(e,getLocation());
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\net\TelnetTask.java 
methodname : TelnetTask.AntTelnetClient.waitForString ( size:198 ) 
-------------------------------------
/** 
 * Read from the telnet session until the string we are
 * waiting for is found or the timeout has been reached
 * @param s The string to wait on
 * @param timeout The maximum number of seconds to wait
 */
public void waitForString(String s,Integer timeout){
  InputStream is=this.getInputStream();
  try {
    StringBuffer sb=new StringBuffer();
    int windowStart=-s.length();
    if (timeout == null || timeout.intValue() == 0) {
      while (windowStart < 0 || !sb.substring(windowStart).equals(s)) {
        sb.append((char)is.read());
        windowStart++;
      }
    }
 else {
      Calendar endTime=Calendar.getInstance();
      endTime.add(Calendar.SECOND,timeout.intValue());
      while (windowStart < 0 || !sb.substring(windowStart).equals(s)) {
        while (Calendar.getInstance().before(endTime) && is.available() == 0) {
          Thread.sleep(WAIT_INTERVAL);
        }
        if (is.available() == 0) {
          log("Read before running into timeout: " + sb.toString(),Project.MSG_DEBUG);
          throw new BuildException("Response timed-out waiting for \"" + s + '\"',getLocation());
        }
        sb.append((char)is.read());
        windowStart++;
      }
    }
    log(sb.toString(),Project.MSG_INFO);
  }
 catch (  BuildException be) {
    throw be;
  }
catch (  Exception e) {
    throw new BuildException(e,getLocation());
  }
}

=================================================
cloneset:35
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\sos\SOSCheckin.java 
methodname : SOSCheckin.buildCmdLine ( size:111 ) 
-------------------------------------
/** 
 * Build the command line. <p>
 * CheckInFile required parameters: -server -name -password -database -project
 * -file<br>
 * CheckInFile optional parameters: -workdir -log -verbose -nocache -nocompression
 * -soshome<br>
 * CheckInProject required parameters: -server -name -password -database
 * -project<br>
 * CheckInProject optional parameters: workdir -recursive -log -verbose
 * -nocache -nocompression -soshome<br>
 * @return    Commandline the generated command to be executed
 */
protected Commandline buildCmdLine(){
  commandLine=new Commandline();
  if (getFilename() != null) {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
    commandLine.createArgument().setValue(SOSCmd.COMMAND_CHECKIN_FILE);
    commandLine.createArgument().setValue(SOSCmd.FLAG_FILE);
    commandLine.createArgument().setValue(getFilename());
  }
 else {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
    commandLine.createArgument().setValue(SOSCmd.COMMAND_CHECKIN_PROJECT);
    commandLine.createArgument().setValue(getRecursive());
  }
  getRequiredAttributes();
  getOptionalAttributes();
  if (getComment() != null) {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMENT);
    commandLine.createArgument().setValue(getComment());
  }
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\sos\SOSGet.java 
methodname : SOSGet.buildCmdLine ( size:134 ) 
-------------------------------------
/** 
 * Build the command line <br>
 * GetFile required parameters: -server -name -password -database -project -file<br>
 * GetFile optional parameters: -workdir -revision -verbose -nocache -nocompression -soshome<br>
 * GetProject required parameters: -server -name -password -database -project<br>
 * GetProject optional parameters: -label -workdir -recursive -verbose -nocache
 * -nocompression -soshome<br>
 * @return    Commandline the generated command to be executed
 */
protected Commandline buildCmdLine(){
  commandLine=new Commandline();
  if (getFilename() != null) {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
    commandLine.createArgument().setValue(SOSCmd.COMMAND_GET_FILE);
    commandLine.createArgument().setValue(SOSCmd.FLAG_FILE);
    commandLine.createArgument().setValue(getFilename());
    if (getVersion() != null) {
      commandLine.createArgument().setValue(SOSCmd.FLAG_VERSION);
      commandLine.createArgument().setValue(getVersion());
    }
  }
 else {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
    commandLine.createArgument().setValue(SOSCmd.COMMAND_GET_PROJECT);
    commandLine.createArgument().setValue(getRecursive());
    if (getLabel() != null) {
      commandLine.createArgument().setValue(SOSCmd.FLAG_LABEL);
      commandLine.createArgument().setValue(getLabel());
    }
  }
  getRequiredAttributes();
  getOptionalAttributes();
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\sos\SOSCheckout.java 
methodname : SOSCheckout.buildCmdLine ( size:88 ) 
-------------------------------------
/** 
 * Build the command line <br>
 * CheckOutFile required parameters: -server -name -password -database -project -file<br>
 * CheckOutFile optional parameters: -workdir -verbose -nocache -nocompression -soshome<br>
 * CheckOutProject required parameters: -server -name -password -database -project<br>
 * CheckOutProject optional parameters:-workdir -recursive -verbose -nocache
 * -nocompression -soshome<br>
 * @return    Commandline the generated command to be executed
 */
protected Commandline buildCmdLine(){
  commandLine=new Commandline();
  if (getFilename() != null) {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
    commandLine.createArgument().setValue(SOSCmd.COMMAND_CHECKOUT_FILE);
    commandLine.createArgument().setValue(SOSCmd.FLAG_FILE);
    commandLine.createArgument().setValue(getFilename());
  }
 else {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
    commandLine.createArgument().setValue(SOSCmd.COMMAND_CHECKOUT_PROJECT);
    commandLine.createArgument().setValue(getRecursive());
  }
  getRequiredAttributes();
  getOptionalAttributes();
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\sos\SOSLabel.java 
methodname : SOSLabel.buildCmdLine ( size:96 ) 
-------------------------------------
/** 
 * Build the command line <br>
 * AddLabel required parameters: -server -name -password -database -project -label<br>
 * AddLabel optional parameters: -verbose -comment<br>
 * @return    Commandline the generated command to be executed
 */
protected Commandline buildCmdLine(){
  commandLine=new Commandline();
  commandLine.createArgument().setValue(SOSCmd.FLAG_COMMAND);
  commandLine.createArgument().setValue(SOSCmd.COMMAND_LABEL);
  getRequiredAttributes();
  if (getLabel() == null) {
    throw new BuildException("label attribute must be set!",getLocation());
  }
  commandLine.createArgument().setValue(SOSCmd.FLAG_LABEL);
  commandLine.createArgument().setValue(getLabel());
  commandLine.createArgument().setValue(getVerbose());
  if (getComment() != null) {
    commandLine.createArgument().setValue(SOSCmd.FLAG_COMMENT);
    commandLine.createArgument().setValue(getComment());
  }
  return commandLine;
}

=================================================
cloneset:36
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ssh\Scp.java 
methodname : Scp.download ( size:112 ) 
-------------------------------------
private void download(String fromSshUri,String toPath) throws JSchException, IOException {
  String file=parseUri(fromSshUri);
  Session session=null;
  try {
    session=openSession();
    ScpFromMessage message=null;
    if (!isSftp) {
      message=new ScpFromMessage(getVerbose(),session,file,getProject().resolveFile(toPath),fromSshUri.endsWith("*"),preserveLastModified);
    }
 else {
      message=new ScpFromMessageBySftp(getVerbose(),session,file,getProject().resolveFile(toPath),fromSshUri.endsWith("*"),preserveLastModified);
    }
    log("Receiving file: " + file);
    message.setLogListener(this);
    message.execute();
  }
  finally {
    if (session != null) {
      session.disconnect();
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ssh\Scp.java 
methodname : Scp.upload ( size:96 ) 
-------------------------------------
private void upload(String fromPath,String toSshUri) throws IOException, JSchException {
  String file=parseUri(toSshUri);
  Session session=null;
  try {
    session=openSession();
    ScpToMessage message=null;
    if (!isSftp) {
      message=new ScpToMessage(getVerbose(),session,getProject().resolveFile(fromPath),file);
    }
 else {
      message=new ScpToMessageBySftp(getVerbose(),session,getProject().resolveFile(fromPath),file);
    }
    message.setLogListener(this);
    message.execute();
  }
  finally {
    if (session != null) {
      session.disconnect();
    }
  }
}

=================================================
cloneset:37
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ssh\ScpFromMessage.java 
methodname : ScpFromMessage.execute ( size:78 ) 
-------------------------------------
/** 
 * Carry out the transfer.
 * @throws IOException on i/o errors
 * @throws JSchException on errors detected by scp
 */
public void execute() throws IOException, JSchException {
  String command="scp -f ";
  if (isRecursive) {
    command+="-r ";
  }
  command+=remoteFile;
  Channel channel=openExecChannel(command);
  try {
    OutputStream out=channel.getOutputStream();
    InputStream in=channel.getInputStream();
    channel.connect();
    sendAck(out);
    startRemoteCpProtocol(in,out,localFile);
  }
  finally {
    if (channel != null) {
      channel.disconnect();
    }
  }
  log("done\n");
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ssh\ScpToMessage.java 
methodname : ScpToMessage.doSingleTransfer ( size:65 ) 
-------------------------------------
private void doSingleTransfer() throws IOException, JSchException {
  String cmd="scp -t " + remotePath;
  Channel channel=openExecChannel(cmd);
  try {
    OutputStream out=channel.getOutputStream();
    InputStream in=channel.getInputStream();
    channel.connect();
    waitForAck(in);
    sendFileToRemote(localFile,in,out);
  }
  finally {
    if (channel != null) {
      channel.disconnect();
    }
  }
}

=================================================
cloneset:38
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ssh\SSHSession.java 
methodname : SSHSession.setLocaltunnels ( size:105 ) 
-------------------------------------
/** 
 * Changes the comma-delimited list of local tunnels to establish
 * on the connection.
 * @param tunnels a comma-delimited list of lport:rhost:rport
 * tunnel specifications
 */
public void setLocaltunnels(String tunnels){
  String[] specs=tunnels.split(", ");
  for (int i=0; i < specs.length; i++) {
    if (specs[i].length() > 0) {
      String[] spec=specs[i].split(":",3);
      int lport=Integer.parseInt(spec[0]);
      String rhost=spec[1];
      int rport=Integer.parseInt(spec[2]);
      LocalTunnel tunnel=createLocalTunnel();
      tunnel.setLPort(lport);
      tunnel.setRHost(rhost);
      tunnel.setRPort(rport);
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\ssh\SSHSession.java 
methodname : SSHSession.setRemotetunnels ( size:105 ) 
-------------------------------------
/** 
 * Changes the comma-delimited list of remote tunnels to establish
 * on the connection.
 * @param tunnels a comma-delimited list of rport:lhost:lport
 * tunnel specifications
 */
public void setRemotetunnels(String tunnels){
  String[] specs=tunnels.split(", ");
  for (int i=0; i < specs.length; i++) {
    if (specs[i].length() > 0) {
      String[] spec=specs[i].split(":",3);
      int rport=Integer.parseInt(spec[0]);
      String lhost=spec[1];
      int lport=Integer.parseInt(spec[2]);
      RemoteTunnel tunnel=createRemoteTunnel();
      tunnel.setRPort(rport);
      tunnel.setLHost(lhost);
      tunnel.setLPort(lport);
    }
  }
}

=================================================
cloneset:39
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\TraXLiaison.java 
methodname : TraXLiaison.getSource ( size:101 ) 
-------------------------------------
/** 
 * Get the source instance from the stream and id of the file.
 * @param is the stream containing the stylesheet data.
 * @param infile the file that will be used for the systemid.
 * @return the configured source instance matching the stylesheet.
 * @throws ParserConfigurationException if a parser cannot be created which
 * satisfies the requested configuration.
 * @throws SAXException in case of problem detected by the SAX parser.
 */
private Source getSource(InputStream is,File infile) throws ParserConfigurationException, SAXException {
  Source src=null;
  if (entityResolver != null) {
    if (getFactory().getFeature(SAXSource.FEATURE)) {
      SAXParserFactory spFactory=SAXParserFactory.newInstance();
      spFactory.setNamespaceAware(true);
      XMLReader reader=spFactory.newSAXParser().getXMLReader();
      reader.setEntityResolver(entityResolver);
      src=new SAXSource(reader,new InputSource(is));
    }
 else {
      throw new IllegalStateException("xcatalog specified, but " + "parser doesn't support SAX");
    }
  }
 else {
    src=new StreamSource(is);
  }
  src.setSystemId(JAXPUtils.getSystemId(infile));
  return src;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\TraXLiaison.java 
methodname : TraXLiaison.getSource ( size:100 ) 
-------------------------------------
private Source getSource(InputStream is,Resource resource) throws ParserConfigurationException, SAXException {
  Source src=null;
  if (entityResolver != null) {
    if (getFactory().getFeature(SAXSource.FEATURE)) {
      SAXParserFactory spFactory=SAXParserFactory.newInstance();
      spFactory.setNamespaceAware(true);
      XMLReader reader=spFactory.newSAXParser().getXMLReader();
      reader.setEntityResolver(entityResolver);
      src=new SAXSource(reader,new InputSource(is));
    }
 else {
      throw new IllegalStateException("xcatalog specified, but " + "parser doesn't support SAX");
    }
  }
 else {
    src=new StreamSource(is);
  }
  src.setSystemId(resourceToURI(resource));
  return src;
}

=================================================
cloneset:40
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSADD.java 
methodname : MSVSSADD.buildCmdLine ( size:96 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
protected Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getLocalpath() == null) {
    String msg="localPath attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_ADD);
  commandLine.createArgument().setValue(getLocalpath());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(getRecursive());
  commandLine.createArgument().setValue(getWritable());
  commandLine.createArgument().setValue(getLogin());
  commandLine.createArgument().setValue(getComment());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSCHECKIN.java 
methodname : MSVSSCHECKIN.buildCmdLine ( size:104 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
protected Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getVsspath() == null) {
    String msg="vsspath attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_CHECKIN);
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(getLocalpath());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(getRecursive());
  commandLine.createArgument().setValue(getWritable());
  commandLine.createArgument().setValue(getLogin());
  commandLine.createArgument().setValue(getComment());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSCHECKOUT.java 
methodname : MSVSSCHECKOUT.buildCmdLine ( size:120 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
protected Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getVsspath() == null) {
    String msg="vsspath attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_CHECKOUT);
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(getLocalpath());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(getRecursive());
  commandLine.createArgument().setValue(getVersionDateLabel());
  commandLine.createArgument().setValue(getLogin());
  commandLine.createArgument().setValue(getFileTimeStamp());
  commandLine.createArgument().setValue(getWritableFiles());
  commandLine.createArgument().setValue(getGetLocalCopy());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSCREATE.java 
methodname : MSVSSCREATE.buildCmdLine ( size:87 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getVsspath() == null) {
    String msg="vsspath attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_CREATE);
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(getComment());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(getQuiet());
  commandLine.createArgument().setValue(getLogin());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSGET.java 
methodname : MSVSSGET.buildCmdLine ( size:121 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_GET);
  if (getVsspath() == null) {
    throw new BuildException("vsspath attribute must be set!",getLocation());
  }
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(getLocalpath());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(getQuiet());
  commandLine.createArgument().setValue(getRecursive());
  commandLine.createArgument().setValue(getVersionDateLabel());
  commandLine.createArgument().setValue(getWritable());
  commandLine.createArgument().setValue(getLogin());
  commandLine.createArgument().setValue(getFileTimeStamp());
  commandLine.createArgument().setValue(getWritableFiles());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSHISTORY.java 
methodname : MSVSSHISTORY.buildCmdLine ( size:110 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getVsspath() == null) {
    String msg="vsspath attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_HISTORY);
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(FLAG_AUTORESPONSE_DEF);
  commandLine.createArgument().setValue(getVersionDate());
  commandLine.createArgument().setValue(getVersionLabel());
  commandLine.createArgument().setValue(getRecursive());
  commandLine.createArgument().setValue(getStyle());
  commandLine.createArgument().setValue(getLogin());
  commandLine.createArgument().setValue(getOutput());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSCP.java 
methodname : MSVSSCP.buildCmdLine ( size:72 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
protected Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getVsspath() == null) {
    String msg="vsspath attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_CP);
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(getLogin());
  return commandLine;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\optional\vss\MSVSSLABEL.java 
methodname : MSVSSLABEL.buildCmdLine ( size:114 ) 
-------------------------------------
/** 
 * Builds a command line to execute ss.
 * @return     The constructed commandline.
 */
Commandline buildCmdLine(){
  Commandline commandLine=new Commandline();
  if (getVsspath() == null) {
    throw new BuildException("vsspath attribute must be set!",getLocation());
  }
  String label=getLabel();
  if (label.equals("")) {
    String msg="label attribute must be set!";
    throw new BuildException(msg,getLocation());
  }
  commandLine.setExecutable(getSSCommand());
  commandLine.createArgument().setValue(COMMAND_LABEL);
  commandLine.createArgument().setValue(getVsspath());
  commandLine.createArgument().setValue(getComment());
  commandLine.createArgument().setValue(getAutoresponse());
  commandLine.createArgument().setValue(label);
  commandLine.createArgument().setValue(getVersion());
  commandLine.createArgument().setValue(getLogin());
  return commandLine;
}

=================================================
cloneset:41
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\Pack.java 
methodname : Pack.setSrcResource ( size:57 ) 
-------------------------------------
/** 
 * The resource to pack; required.
 * @param src resource to expand
 */
public void setSrcResource(Resource src){
  if (src.isDirectory()) {
    throw new BuildException("the source can't be a directory");
  }
  FileProvider fp=src.as(FileProvider.class);
  if (fp != null) {
    source=fp.getFile();
  }
 else   if (!supportsNonFileResources()) {
    throw new BuildException("Only FileSystem resources are supported.");
  }
  this.src=src;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\Unpack.java 
methodname : Unpack.setSrcResource ( size:83 ) 
-------------------------------------
/** 
 * The resource to expand; required.
 * @param src resource to expand
 */
public void setSrcResource(Resource src){
  if (!src.isExists()) {
    throw new BuildException("the archive " + src.getName() + " doesn't exist");
  }
  if (src.isDirectory()) {
    throw new BuildException("the archive " + src.getName() + " can't be a directory");
  }
  FileProvider fp=src.as(FileProvider.class);
  if (fp != null) {
    source=fp.getFile();
  }
 else   if (!supportsNonFileResources()) {
    throw new BuildException("The source " + src.getName() + " is not a FileSystem "+ "Only FileSystem resources are"+ " supported.");
  }
  srcResource=src;
}

=================================================
cloneset:42
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\PreSetDef.java 
methodname : PreSetDef.PreSetDefinition.sameDefinition ( size:52 ) 
-------------------------------------
/** 
 * Equality method for this definition.
 * @param other another definition.
 * @param project the current project.
 * @return true if the definitions are the same.
 */
public boolean sameDefinition(AntTypeDefinition other,Project project){
  return (other != null && other.getClass() == getClass() && parent != null && parent.sameDefinition(((PreSetDefinition)other).parent,project) && element.similar(((PreSetDefinition)other).element));
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\PreSetDef.java 
methodname : PreSetDef.PreSetDefinition.similarDefinition ( size:57 ) 
-------------------------------------
/** 
 * Similar method for this definition.
 * @param other another definition.
 * @param project the current project.
 * @return true if the definitions are similar.
 */
public boolean similarDefinition(AntTypeDefinition other,Project project){
  return (other != null && other.getClass().getName().equals(getClass().getName()) && parent != null && parent.similarDefinition(((PreSetDefinition)other).parent,project) && element.similar(((PreSetDefinition)other).element));
}

=================================================
cloneset:43
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\Replace.java 
methodname : Replace.Replacefilter.validate ( size:127 ) 
-------------------------------------
/** 
 * Validate the filter's configuration.
 * @throws BuildException if any part is invalid.
 */
public void validate() throws BuildException {
  if (token == null) {
    String message="token is a mandatory for replacefilter.";
    throw new BuildException(message);
  }
  if ("".equals(token.getText())) {
    String message="The token must not be an empty " + "string.";
    throw new BuildException(message);
  }
  if ((value != null) && (property != null)) {
    String message="Either value or property " + "can be specified, but a replacefilter " + "element cannot have both.";
    throw new BuildException(message);
  }
  if ((property != null)) {
    if (propertyResource == null) {
      String message="The replacefilter's property attribute " + "can only be used with the replacetask's " + "propertyFile/Resource attribute.";
      throw new BuildException(message);
    }
    if (properties == null || properties.getProperty(property) == null) {
      String message="property \"" + property + "\" was not found in "+ propertyResource.getName();
      throw new BuildException(message);
    }
  }
  replaceValue=getReplaceValue();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\taskdefs\Replace.java 
methodname : Replace.validateAttributes ( size:113 ) 
-------------------------------------
/** 
 * Validate attributes provided for this task in .xml build file.
 * @exception BuildException if any supplied attribute is invalid or any
 * mandatory attribute is missing.
 */
public void validateAttributes() throws BuildException {
  if (sourceFile == null && dir == null && resources == null) {
    String message="Either the file or the dir attribute " + "or nested resources must be specified";
    throw new BuildException(message,getLocation());
  }
  if (propertyResource != null && !propertyResource.isExists()) {
    String message="Property file " + propertyResource.getName() + " does not exist.";
    throw new BuildException(message,getLocation());
  }
  if (token == null && replacefilters.size() == 0) {
    String message="Either token or a nested replacefilter " + "must be specified";
    throw new BuildException(message,getLocation());
  }
  if (token != null && "".equals(token.getText())) {
    String message="The token attribute must not be an empty string.";
    throw new BuildException(message,getLocation());
  }
}

=================================================
cloneset:44
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\AbstractFileSet.java 
methodname : AbstractFileSet.mergePatterns ( size:67 ) 
-------------------------------------
/** 
 * Get the merged patterns for this AbstractFileSet.
 * @param p the project to use.
 * @return the default patternset merged with the additional sets
 * in a new PatternSet instance.
 * @since Ant 1.7
 */
public synchronized PatternSet mergePatterns(Project p){
  if (isReference()) {
    return getRef(p).mergePatterns(p);
  }
  dieOnCircularReference();
  PatternSet ps=(PatternSet)defaultPatterns.clone();
  final int count=additionalPatterns.size();
  for (int i=0; i < count; i++) {
    ps.append(additionalPatterns.get(i),p);
  }
  return ps;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\Files.java 
methodname : Files.mergePatterns ( size:78 ) 
-------------------------------------
/** 
 * Get the merged patterns for this Files collection.
 * @param p Project instance.
 * @return the default patternset merged with the additional sets
 * in a new PatternSet instance.
 */
public synchronized PatternSet mergePatterns(Project p){
  if (isReference()) {
    return getRef().mergePatterns(p);
  }
  dieOnCircularReference();
  PatternSet ps=new PatternSet();
  ps.append(defaultPatterns,p);
  final int count=additionalPatterns.size();
  for (int i=0; i < count; i++) {
    Object o=additionalPatterns.elementAt(i);
    ps.append((PatternSet)o,p);
  }
  return ps;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\BaseSelectorContainer.java 
methodname : BaseSelectorContainer.dieOnCircularReference ( size:59 ) 
-------------------------------------
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    for (    FileSelector fileSelector : selectorsList) {
      if (fileSelector instanceof DataType) {
        pushAndInvokeCircularReferenceCheck((DataType)fileSelector,stk,p);
      }
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\AbstractSelectorContainer.java 
methodname : AbstractSelectorContainer.dieOnCircularReference ( size:58 ) 
-------------------------------------
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p){
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    for (    FileSelector fileSelector : selectorsList) {
      if (fileSelector instanceof DataType) {
        pushAndInvokeCircularReferenceCheck((DataType)fileSelector,stk,p);
      }
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\selectors\ResourceSelectorContainer.java 
methodname : ResourceSelectorContainer.dieOnCircularReference ( size:58 ) 
-------------------------------------
/** 
 * Overrides the version from DataType to recurse on nested ResourceSelectors.
 * @param stk the Stack of references.
 * @param p   the Project to resolve against.
 * @throws BuildException on error.
 */
protected void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    for (    ResourceSelector resourceSelector : resourceSelectors) {
      if (resourceSelector instanceof DataType) {
        pushAndInvokeCircularReferenceCheck((DataType)resourceSelector,stk,p);
      }
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\MappedResourceCollection.java 
methodname : MappedResourceCollection.toString ( size:71 ) 
-------------------------------------
/** 
 * Format this resource collection as a String.
 * @return a descriptive <code>String</code>.
 */
public String toString(){
  if (isReference()) {
    return getCheckedRef().toString();
  }
  Iterator<Resource> i=iterator();
  if (!i.hasNext()) {
    return "";
  }
  StringBuffer sb=new StringBuffer();
  while (i.hasNext()) {
    if (sb.length() > 0) {
      sb.append(File.pathSeparatorChar);
    }
    sb.append(i.next());
  }
  return sb.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\Tokens.java 
methodname : Tokens.dieOnCircularReference ( size:52 ) 
-------------------------------------
/** 
 * Overrides the BaseResourceCollectionContainer version
 * to check the nested Tokenizer.
 * @param stk the stack of data types to use (recursively).
 * @param p   the project to use to dereference the references.
 * @throws BuildException on error.
 */
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  super.dieOnCircularReference(stk,p);
  if (!isReference()) {
    if (tokenizer instanceof DataType) {
      pushAndInvokeCircularReferenceCheck((DataType)tokenizer,stk,p);
    }
    setChecked(true);
  }
}

=================================================
cloneset:45
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\Assertions.java 
methodname : Assertions.applyAssertions ( size:109 ) 
-------------------------------------
/** 
 * add the assertions to a list in a format suitable
 * for adding to a command line
 * @param commandList the command line to format
 */
public void applyAssertions(List<String> commandList){
  getProject().log("Applying assertions",Project.MSG_DEBUG);
  Assertions clause=getFinalReference();
  if (Boolean.TRUE.equals(clause.enableSystemAssertions)) {
    getProject().log("Enabling system assertions",Project.MSG_DEBUG);
    commandList.add("-enablesystemassertions");
  }
 else   if (Boolean.FALSE.equals(clause.enableSystemAssertions)) {
    getProject().log("disabling system assertions",Project.MSG_DEBUG);
    commandList.add("-disablesystemassertions");
  }
  for (  BaseAssertion assertion : clause.assertionList) {
    String arg=assertion.toCommand();
    getProject().log("adding assertion " + arg,Project.MSG_DEBUG);
    commandList.add(arg);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\Assertions.java 
methodname : Assertions.applyAssertions ( size:110 ) 
-------------------------------------
/** 
 * add the assertions to a list in a format suitable
 * for adding to a command line
 * @param commandIterator list of commands
 */
public void applyAssertions(final ListIterator<String> commandIterator){
  getProject().log("Applying assertions",Project.MSG_DEBUG);
  Assertions clause=getFinalReference();
  if (Boolean.TRUE.equals(clause.enableSystemAssertions)) {
    getProject().log("Enabling system assertions",Project.MSG_DEBUG);
    commandIterator.add("-enablesystemassertions");
  }
 else   if (Boolean.FALSE.equals(clause.enableSystemAssertions)) {
    getProject().log("disabling system assertions",Project.MSG_DEBUG);
    commandIterator.add("-disablesystemassertions");
  }
  for (  BaseAssertion assertion : clause.assertionList) {
    String arg=assertion.toCommand();
    getProject().log("adding assertion " + arg,Project.MSG_DEBUG);
    commandIterator.add(arg);
  }
}

=================================================
cloneset:46
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\FilterChain.java 
methodname : FilterChain.dieOnCircularReference ( size:76 ) 
-------------------------------------
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    for (Iterator<Object> i=filterReaders.iterator(); i.hasNext(); ) {
      Object o=i.next();
      if (o instanceof DataType) {
        pushAndInvokeCircularReferenceCheck((DataType)o,stk,p);
      }
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\AbstractResourceCollectionWrapper.java 
methodname : AbstractResourceCollectionWrapper.dieOnCircularReference ( size:52 ) 
-------------------------------------
/** 
 * Overrides the version of DataType to recurse on all DataType
 * child elements that may have been added.
 * @param stk the stack of data types to use (recursively).
 * @param p   the project to use to dereference the references.
 * @throws BuildException on error.
 */
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    if (rc instanceof DataType) {
      pushAndInvokeCircularReferenceCheck((DataType)rc,stk,p);
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\comparators\Reverse.java 
methodname : Reverse.dieOnCircularReference ( size:51 ) 
-------------------------------------
protected void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    if (nested instanceof DataType) {
      pushAndInvokeCircularReferenceCheck((DataType)nested,stk,p);
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\Tokens.java 
methodname : Tokens.dieOnCircularReference ( size:52 ) 
-------------------------------------
/** 
 * Overrides the BaseResourceCollectionContainer version
 * to check the nested Tokenizer.
 * @param stk the stack of data types to use (recursively).
 * @param p   the project to use to dereference the references.
 * @throws BuildException on error.
 */
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  super.dieOnCircularReference(stk,p);
  if (!isReference()) {
    if (tokenizer instanceof DataType) {
      pushAndInvokeCircularReferenceCheck((DataType)tokenizer,stk,p);
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\MappedResourceCollection.java 
methodname : MappedResourceCollection.dieOnCircularReference ( size:66 ) 
-------------------------------------
/** 
 * Overrides the version of DataType to recurse on all DataType
 * child elements that may have been added.
 * @param stk the stack of data types to use (recursively).
 * @param p   the project to use to dereference the references.
 * @throws BuildException on error.
 */
protected synchronized void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    checkInitialized();
    if (mapper != null) {
      pushAndInvokeCircularReferenceCheck(mapper,stk,p);
    }
    if (nested instanceof DataType) {
      pushAndInvokeCircularReferenceCheck((DataType)nested,stk,p);
    }
    setChecked(true);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\BaseResourceCollectionContainer.java 
methodname : BaseResourceCollectionContainer.toString ( size:64 ) 
-------------------------------------
/** 
 * Format this BaseResourceCollectionContainer as a String.
 * @return a descriptive <code>String</code>.
 */
public synchronized String toString(){
  if (isReference()) {
    return getCheckedRef().toString();
  }
  if (cacheCollection().size() == 0) {
    return "";
  }
  StringBuilder sb=new StringBuilder();
  for (  Resource resource : coll) {
    if (sb.length() > 0) {
      sb.append(File.pathSeparatorChar);
    }
    sb.append(resource);
  }
  return sb.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\Resources.java 
methodname : Resources.dieOnCircularReference ( size:59 ) 
-------------------------------------
/** 
 * Overrides the version of DataType to recurse on all DataType
 * child elements that may have been added.
 * @param stk the stack of data types to use (recursively).
 * @param p   the project to use to dereference the references.
 * @throws BuildException on error.
 */
protected void dieOnCircularReference(Stack<Object> stk,Project p) throws BuildException {
  if (isChecked()) {
    return;
  }
  if (isReference()) {
    super.dieOnCircularReference(stk,p);
  }
 else {
    for (    ResourceCollection resourceCollection : getNested()) {
      if (resourceCollection instanceof DataType) {
        pushAndInvokeCircularReferenceCheck((DataType)resourceCollection,stk,p);
      }
    }
    setChecked(true);
  }
}

=================================================
cloneset:47
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\optional\image\Arc.java 
methodname : Arc.executeDrawOperation ( size:219 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
public PlanarImage executeDrawOperation(){
  BufferedImage bi=new BufferedImage(width + (stroke_width * 2),height + (stroke_width * 2),BufferedImage.TYPE_4BYTE_ABGR_PRE);
  Graphics2D graphics=(Graphics2D)bi.getGraphics();
  if (!stroke.equals("transparent")) {
    BasicStroke bStroke=new BasicStroke(stroke_width);
    graphics.setColor(ColorMapper.getColorByName(stroke));
    graphics.setStroke(bStroke);
    graphics.draw(new Arc2D.Double(stroke_width,stroke_width,width,height,start,stop,type));
  }
  if (!fill.equals("transparent")) {
    graphics.setColor(ColorMapper.getColorByName(fill));
    graphics.fill(new Arc2D.Double(stroke_width,stroke_width,width,height,start,stop,type));
  }
  final int size=instructions.size();
  for (int i=0; i < size; i++) {
    ImageOperation instr=((ImageOperation)instructions.elementAt(i));
    if (instr instanceof DrawOperation) {
      PlanarImage img=((DrawOperation)instr).executeDrawOperation();
      graphics.drawImage(img.getAsBufferedImage(),null,0,0);
    }
 else     if (instr instanceof TransformOperation) {
      graphics=(Graphics2D)bi.getGraphics();
      PlanarImage image=((TransformOperation)instr).executeTransformOperation(PlanarImage.wrapRenderedImage(bi));
      bi=image.getAsBufferedImage();
    }
  }
  return PlanarImage.wrapRenderedImage(bi);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\optional\image\Ellipse.java 
methodname : Ellipse.executeDrawOperation ( size:203 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
public PlanarImage executeDrawOperation(){
  BufferedImage bi=new BufferedImage(width,height,BufferedImage.TYPE_4BYTE_ABGR_PRE);
  Graphics2D graphics=(Graphics2D)bi.getGraphics();
  if (!stroke.equals("transparent")) {
    BasicStroke bStroke=new BasicStroke(stroke_width);
    graphics.setColor(ColorMapper.getColorByName(stroke));
    graphics.setStroke(bStroke);
    graphics.draw(new Ellipse2D.Double(0,0,width,height));
  }
  if (!fill.equals("transparent")) {
    graphics.setColor(ColorMapper.getColorByName(fill));
    graphics.fill(new Ellipse2D.Double(0,0,width,height));
  }
  final int size=instructions.size();
  for (int i=0; i < size; i++) {
    ImageOperation instr=((ImageOperation)instructions.elementAt(i));
    if (instr instanceof DrawOperation) {
      PlanarImage img=((DrawOperation)instr).executeDrawOperation();
      graphics.drawImage(img.getAsBufferedImage(),null,0,0);
    }
 else     if (instr instanceof TransformOperation) {
      graphics=(Graphics2D)bi.getGraphics();
      PlanarImage image=((TransformOperation)instr).executeTransformOperation(PlanarImage.wrapRenderedImage(bi));
      bi=image.getAsBufferedImage();
    }
  }
  return PlanarImage.wrapRenderedImage(bi);
}

=================================================
cloneset:48
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\optional\image\Draw.java 
methodname : Draw.executeTransformOperation ( size:155 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
public PlanarImage executeTransformOperation(PlanarImage image){
  BufferedImage bi=image.getAsBufferedImage();
  Graphics2D graphics=(Graphics2D)bi.getGraphics();
  final int size=instructions.size();
  for (int i=0; i < size; i++) {
    ImageOperation instr=((ImageOperation)instructions.elementAt(i));
    if (instr instanceof DrawOperation) {
      PlanarImage op=((DrawOperation)instr).executeDrawOperation();
      log("\tDrawing to x=" + xloc + " y="+ yloc);
      graphics.drawImage(op.getAsBufferedImage(),null,xloc,yloc);
    }
 else     if (instr instanceof TransformOperation) {
      PlanarImage op=((TransformOperation)instr).executeTransformOperation(null);
      BufferedImage child=op.getAsBufferedImage();
      log("\tDrawing to x=" + xloc + " y="+ yloc);
      graphics.drawImage(child,null,xloc,yloc);
      PlanarImage.wrapRenderedImage(bi);
    }
  }
  image=PlanarImage.wrapRenderedImage(bi);
  return image;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\optional\image\Rotate.java 
methodname : Rotate.executeTransformOperation ( size:143 ) 
-------------------------------------
/** 
 * Performs the image rotation when being handled as a TransformOperation.
 * @param image The image to perform the transformation on.
 * @return the transformed image.
 */
public PlanarImage executeTransformOperation(PlanarImage image){
  BufferedImage bi=null;
  final int size=instructions.size();
  for (int i=0; i < size; i++) {
    ImageOperation instr=((ImageOperation)instructions.elementAt(i));
    if (instr instanceof DrawOperation) {
      System.out.println("Execing Draws");
      PlanarImage op=((DrawOperation)instr).executeDrawOperation();
      image=performRotate(op);
      return image;
    }
 else     if (instr instanceof TransformOperation) {
      bi=image.getAsBufferedImage();
      System.out.println("Execing Transforms");
      image=((TransformOperation)instr).executeTransformOperation(PlanarImage.wrapRenderedImage(bi));
      bi=image.getAsBufferedImage();
    }
  }
  System.out.println("Execing as TransformOperation");
  image=performRotate(image);
  System.out.println(image);
  return image;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\optional\image\Scale.java 
methodname : Scale.executeDrawOperation ( size:59 ) 
-------------------------------------
/** 
 * {@inheritDoc}. 
 */
public PlanarImage executeDrawOperation(){
  final int size=instructions.size();
  for (int i=0; i < size; i++) {
    ImageOperation instr=((ImageOperation)instructions.elementAt(i));
    if (instr instanceof DrawOperation) {
      PlanarImage image=null;
      performScale(image);
      return image;
    }
  }
  return null;
}

=================================================
cloneset:49
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\resources\selectors\Date.java 
methodname : Date.isSelected ( size:119 ) 
-------------------------------------
/** 
 * Return true if this Resource is selected.
 * @param r the Resource to check.
 * @return whether the Resource was selected.
 */
public synchronized boolean isSelected(Resource r){
  if (dateTime == null && millis == null) {
    throw new BuildException(MILLIS_OR_DATETIME);
  }
  if (millis == null) {
    DateFormat df=((pattern == null) ? DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT,Locale.US) : new SimpleDateFormat(pattern));
    try {
      long m=df.parse(dateTime).getTime();
      if (m < 0) {
        throw new BuildException("Date of " + dateTime + " results in negative milliseconds value"+ " relative to epoch (January 1, 1970, 00:00:00 GMT).");
      }
      setMillis(m);
    }
 catch (    ParseException pe) {
      throw new BuildException("Date of " + dateTime + " Cannot be parsed correctly. It should be in"+ (pattern == null ? " MM/DD/YYYY HH:MM AM_PM" : pattern)+ " format.");
    }
  }
  return when.evaluate(r.getLastModified(),millis.longValue(),granularity);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\DateSelector.java 
methodname : DateSelector.verifySettings ( size:102 ) 
-------------------------------------
/** 
 * This is a consistency check to ensure the selector's required
 * values have been set.
 */
public void verifySettings(){
  if (dateTime == null && millis < 0) {
    setError("You must provide a datetime or the number of " + "milliseconds.");
  }
 else   if (millis < 0 && dateTime != null) {
    DateFormat df=((pattern == null) ? DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT,Locale.US) : new SimpleDateFormat(pattern));
    try {
      setMillis(df.parse(dateTime).getTime());
      if (millis < 0) {
        setError("Date of " + dateTime + " results in negative milliseconds value"+ " relative to epoch (January 1, 1970, 00:00:00 GMT).");
      }
    }
 catch (    ParseException pe) {
      setError("Date of " + dateTime + " Cannot be parsed correctly. It should be in"+ ((pattern == null) ? " MM/DD/YYYY HH:MM AM_PM" : pattern)+ " format.");
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\ContainsSelector.java 
methodname : ContainsSelector.toString ( size:61 ) 
-------------------------------------
/** 
 * @return a string describing this object
 */
public String toString(){
  StringBuilder buf=new StringBuilder("{containsselector text: ");
  buf.append('"').append(contains).append('"');
  buf.append(" casesensitive: ");
  buf.append(casesensitive ? "true" : "false");
  buf.append(" ignorewhitespace: ");
  buf.append(ignorewhitespace ? "true" : "false");
  buf.append("}");
  return buf.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\DependSelector.java 
methodname : DependSelector.toString ( size:86 ) 
-------------------------------------
/** 
 * @return a string describing this object
 */
public String toString(){
  StringBuilder buf=new StringBuilder("{dependselector targetdir: ");
  if (targetdir == null) {
    buf.append("NOT YET SET");
  }
 else {
    buf.append(targetdir.getName());
  }
  buf.append(" granularity: ");
  buf.append(granularity);
  if (map != null) {
    buf.append(" mapper: ");
    buf.append(map.toString());
  }
 else   if (mapperElement != null) {
    buf.append(" mapper: ");
    buf.append(mapperElement.toString());
  }
  buf.append("}");
  return buf.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\FilenameSelector.java 
methodname : FilenameSelector.toString ( size:63 ) 
-------------------------------------
/** 
 * @return a string describing this object
 */
public String toString(){
  StringBuilder buf=new StringBuilder("{filenameselector name: ");
  if (pattern != null) {
    buf.append(pattern);
  }
  if (regex != null) {
    buf.append(regex).append(" [as regular expression]");
  }
  buf.append(" negate: ").append(negated);
  buf.append(" casesensitive: ").append(casesensitive);
  buf.append("}");
  return buf.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\PresentSelector.java 
methodname : PresentSelector.toString ( size:85 ) 
-------------------------------------
/** 
 * @return a string describing this object
 */
public String toString(){
  StringBuilder buf=new StringBuilder("{presentselector targetdir: ");
  if (targetdir == null) {
    buf.append("NOT YET SET");
  }
 else {
    buf.append(targetdir.getName());
  }
  buf.append(" present: ");
  if (destmustexist) {
    buf.append("both");
  }
 else {
    buf.append("srconly");
  }
  if (map != null) {
    buf.append(map.toString());
  }
 else   if (mapperElement != null) {
    buf.append(mapperElement.toString());
  }
  buf.append("}");
  return buf.toString();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\MappingSelector.java 
methodname : MappingSelector.isSelected ( size:89 ) 
-------------------------------------
/** 
 * The heart of the matter. This is where the selector gets to decide
 * on the inclusion of a file in a particular fileset.
 * @param basedir the base directory the scan is being done from
 * @param filename is the name of the file to check
 * @param file is a java.io.File object the selector can use
 * @return whether the file should be selected or not
 */
public boolean isSelected(File basedir,String filename,File file){
  validate();
  String[] destfiles=map.mapFileName(filename);
  if (destfiles == null) {
    return false;
  }
  if (destfiles.length != 1 || destfiles[0] == null) {
    throw new BuildException("Invalid destination file results for " + targetdir.getName() + " with filename "+ filename);
  }
  String destname=destfiles[0];
  File destfile=FILE_UTILS.resolveFile(targetdir,destname);
  boolean selected=selectionTest(file,destfile);
  return selected;
}

=================================================
cloneset:50
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\AndSelector.java 
methodname : AndSelector.isSelected ( size:50 ) 
-------------------------------------
/** 
 * Returns true (the file is selected) only if all other selectors
 * agree that the file should be selected.
 * @param basedir the base directory the scan is being done from
 * @param filename the name of the file to check
 * @param file a java.io.File object for the filename that the selector
 * can use
 * @return whether the file should be selected or not
 */
public boolean isSelected(File basedir,String filename,File file){
  validate();
  Enumeration<FileSelector> e=selectorElements();
  while (e.hasMoreElements()) {
    if (!e.nextElement().isSelected(basedir,filename,file)) {
      return false;
    }
  }
  return true;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\SelectSelector.java 
methodname : SelectSelector.isSelected ( size:61 ) 
-------------------------------------
/** 
 * Returns true (the file is selected) only if the if property (if any)
 * exists, the unless property (if any) doesn't exist, and the
 * contained selector (if any) selects the file. If there is no contained
 * selector, return true (because we assume that the point was to test
 * the if and unless conditions).
 * @param basedir the base directory the scan is being done from
 * @param filename the name of the file to check
 * @param file a java.io.File object for the filename that the selector
 * can use
 * @return whether the file should be selected or not
 */
public boolean isSelected(File basedir,String filename,File file){
  validate();
  if (!(passesConditions())) {
    return false;
  }
  Enumeration<FileSelector> e=selectorElements();
  if (!e.hasMoreElements()) {
    return true;
  }
  FileSelector f=e.nextElement();
  return f.isSelected(basedir,filename,file);
}

=================================================
cloneset:51
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\ContainsRegexpSelector.java 
methodname : ContainsRegexpSelector.setParameters ( size:115 ) 
-------------------------------------
/** 
 * When using this as a custom selector, this method will be called.
 * It translates each parameter into the appropriate setXXX() call.
 * @param parameters the complete set of parameters for this selector
 */
public void setParameters(Parameter[] parameters){
  super.setParameters(parameters);
  if (parameters != null) {
    for (int i=0; i < parameters.length; i++) {
      String paramname=parameters[i].getName();
      if (EXPRESSION_KEY.equalsIgnoreCase(paramname)) {
        setExpression(parameters[i].getValue());
      }
 else       if (CS_KEY.equalsIgnoreCase(paramname)) {
        setCaseSensitive(Project.toBoolean(parameters[i].getValue()));
      }
 else       if (ML_KEY.equalsIgnoreCase(paramname)) {
        setMultiLine(Project.toBoolean(parameters[i].getValue()));
      }
 else       if (SL_KEY.equalsIgnoreCase(paramname)) {
        setSingleLine(Project.toBoolean(parameters[i].getValue()));
      }
 else {
        setError("Invalid parameter " + paramname);
      }
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\ContainsSelector.java 
methodname : ContainsSelector.setParameters ( size:98 ) 
-------------------------------------
/** 
 * When using this as a custom selector, this method will be called.
 * It translates each parameter into the appropriate setXXX() call.
 * @param parameters the complete set of parameters for this selector
 */
public void setParameters(Parameter[] parameters){
  super.setParameters(parameters);
  if (parameters != null) {
    for (int i=0; i < parameters.length; i++) {
      String paramname=parameters[i].getName();
      if (CONTAINS_KEY.equalsIgnoreCase(paramname)) {
        setText(parameters[i].getValue());
      }
 else       if (CASE_KEY.equalsIgnoreCase(paramname)) {
        setCasesensitive(Project.toBoolean(parameters[i].getValue()));
      }
 else       if (WHITESPACE_KEY.equalsIgnoreCase(paramname)) {
        setIgnorewhitespace(Project.toBoolean(parameters[i].getValue()));
      }
 else {
        setError("Invalid parameter " + paramname);
      }
    }
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\types\selectors\FilenameSelector.java 
methodname : FilenameSelector.setParameters ( size:112 ) 
-------------------------------------
/** 
 * When using this as a custom selector, this method will be called.
 * It translates each parameter into the appropriate setXXX() call.
 * @param parameters the complete set of parameters for this selector
 */
public void setParameters(Parameter[] parameters){
  super.setParameters(parameters);
  if (parameters != null) {
    for (int i=0; i < parameters.length; i++) {
      String paramname=parameters[i].getName();
      if (NAME_KEY.equalsIgnoreCase(paramname)) {
        setName(parameters[i].getValue());
      }
 else       if (CASE_KEY.equalsIgnoreCase(paramname)) {
        setCasesensitive(Project.toBoolean(parameters[i].getValue()));
      }
 else       if (NEGATE_KEY.equalsIgnoreCase(paramname)) {
        setNegate(Project.toBoolean(parameters[i].getValue()));
      }
 else       if (REGEX_KEY.equalsIgnoreCase(paramname)) {
        setRegex(parameters[i].getValue());
      }
 else {
        setError("Invalid parameter " + paramname);
      }
    }
  }
}

=================================================
cloneset:52
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\DeweyDecimal.java 
methodname : DeweyDecimal.isEqual ( size:83 ) 
-------------------------------------
/** 
 * Return <code>true</code> if this <code>DeweyDecimal</code> is
 * equal to the other <code>DeweyDecimal</code>.
 * @param other the other DeweyDecimal
 * @return true if equal to other DeweyDecimal, false otherwise
 */
public boolean isEqual(final DeweyDecimal other){
  final int max=Math.max(other.components.length,components.length);
  for (int i=0; i < max; i++) {
    final int component1=(i < components.length) ? components[i] : 0;
    final int component2=(i < other.components.length) ? other.components[i] : 0;
    if (component2 != component1) {
      return false;
    }
  }
  return true;
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\DeweyDecimal.java 
methodname : DeweyDecimal.compareTo ( size:84 ) 
-------------------------------------
public int compareTo(DeweyDecimal other){
  final int max=Math.max(other.components.length,components.length);
  for (int i=0; i < max; i++) {
    final int component1=(i < components.length) ? components[i] : 0;
    final int component2=(i < other.components.length) ? other.components[i] : 0;
    if (component1 != component2) {
      return component1 - component2;
    }
  }
  return 0;
}

=================================================
cloneset:53
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\FileUtils.java 
methodname : FileUtils.copyFile ( size:53 ) 
-------------------------------------
/** 
 * Convenience method to copy a file from a source to a
 * destination specifying if token filtering must be used, if
 * filter chains must be used, if source files may overwrite
 * newer destination files and the last modified time of
 * <code>destFile</code> file should be made equal
 * to the last modified time of <code>sourceFile</code>.
 * @param sourceFile Name of file to copy from.
 * Must not be <code>null</code>.
 * @param destFile Name of file to copy to.
 * Must not be <code>null</code>.
 * @param filters the collection of filters to apply to this copy.
 * @param filterChains filterChains to apply during the copy.
 * @param overwrite Whether or not the destination file should be
 * overwritten if it already exists.
 * @param preserveLastModified Whether or not the last modified time of
 * the resulting file should be set to that
 * of the source file.
 * @param encoding the encoding used to read and write the files.
 * @param project the project instance.
 * @throws IOException if the copying fails.
 * @since Ant 1.5
 */
public void copyFile(String sourceFile,String destFile,FilterSetCollection filters,Vector filterChains,boolean overwrite,boolean preserveLastModified,String encoding,Project project) throws IOException {
  copyFile(new File(sourceFile),new File(destFile),filters,filterChains,overwrite,preserveLastModified,encoding,project);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\FileUtils.java 
methodname : FileUtils.copyFile ( size:58 ) 
-------------------------------------
/** 
 * Convenience method to copy a file from a source to a destination specifying if token
 * filtering must be used, if filter chains must be used, if source files may overwrite newer
 * destination files and the last modified time of <code>destFile</code> file should be made
 * equal to the last modified time of <code>sourceFile</code>.
 * @param sourceFile Name of file to copy from. Must not be <code>null</code>.
 * @param destFile Name of file to copy to. Must not be <code>null</code>.
 * @param filters the collection of filters to apply to this copy.
 * @param filterChains filterChains to apply during the copy.
 * @param overwrite Whether or not the destination file should be overwritten if it already
 * exists.
 * @param preserveLastModified Whether or not the last modified time of the resulting file
 * should be set to that of the source file.
 * @param inputEncoding the encoding used to read the files.
 * @param outputEncoding the encoding used to write the files.
 * @param project the project instance.
 * @throws IOException if the copying fails.
 * @since Ant 1.6
 */
public void copyFile(String sourceFile,String destFile,FilterSetCollection filters,Vector filterChains,boolean overwrite,boolean preserveLastModified,String inputEncoding,String outputEncoding,Project project) throws IOException {
  copyFile(new File(sourceFile),new File(destFile),filters,filterChains,overwrite,preserveLastModified,inputEncoding,outputEncoding,project);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\ResourceUtils.java 
methodname : ResourceUtils.copyResource ( size:54 ) 
-------------------------------------
/** 
 * Convenience method to copy content from one Resource to another
 * specifying whether token filtering must be used, whether filter chains
 * must be used, whether newer destination files may be overwritten and
 * whether the last modified time of <code>dest</code> file should be made
 * equal to the last modified time of <code>source</code>.
 * @param source the Resource to copy from.
 * Must not be <code>null</code>.
 * @param dest   the Resource to copy to.
 * Must not be <code>null</code>.
 * @param filters the collection of filters to apply to this copy.
 * @param filterChains filterChains to apply during the copy.
 * @param overwrite Whether or not the destination Resource should be
 * overwritten if it already exists.
 * @param preserveLastModified Whether or not the last modified time of
 * the destination Resource should be set to that
 * of the source.
 * @param inputEncoding the encoding used to read the files.
 * @param outputEncoding the encoding used to write the files.
 * @param project the project instance.
 * @throws IOException if the copying fails.
 * @since Ant 1.7
 */
public static void copyResource(Resource source,Resource dest,FilterSetCollection filters,Vector filterChains,boolean overwrite,boolean preserveLastModified,String inputEncoding,String outputEncoding,Project project) throws IOException {
  copyResource(source,dest,filters,filterChains,overwrite,preserveLastModified,false,inputEncoding,outputEncoding,project);
}

=================================================
cloneset:54
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\JavaEnvUtils.java 
methodname : JavaEnvUtils.getJreExecutable ( size:62 ) 
-------------------------------------
/** 
 * Finds an executable that is part of a JRE installation based on
 * the java.home system property.
 * <p><code>java</code>, <code>keytool</code>,
 * <code>policytool</code>, <code>orbd</code>, <code>rmid</code>,
 * <code>rmiregistry</code>, <code>servertool</code> and
 * <code>tnameserv</code> are JRE executables on Sun based
 * JRE's.</p>
 * <p>You typically find them in <code>JAVA_HOME/jre/bin</code> if
 * <code>JAVA_HOME</code> points to your JDK installation.  JDK
 * &lt; 1.2 has them in the same directory as the JDK
 * executables.</p>
 * @param command the java executable to find.
 * @return the path to the command.
 * @since Ant 1.5
 */
public static String getJreExecutable(String command){
  if (IS_NETWARE) {
    return command;
  }
  File jExecutable=null;
  if (IS_AIX) {
    jExecutable=findInDir(JAVA_HOME + "/sh",command);
  }
  if (jExecutable == null) {
    jExecutable=findInDir(JAVA_HOME + "/bin",command);
  }
  if (jExecutable != null) {
    return jExecutable.getAbsolutePath();
  }
 else {
    return addExtension(command);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\JavaEnvUtils.java 
methodname : JavaEnvUtils.getJdkExecutable ( size:62 ) 
-------------------------------------
/** 
 * Finds an executable that is part of a JDK installation based on
 * the java.home system property.
 * <p>You typically find them in <code>JAVA_HOME/bin</code> if
 * <code>JAVA_HOME</code> points to your JDK installation.</p>
 * @param command the java executable to find.
 * @return the path to the command.
 * @since Ant 1.5
 */
public static String getJdkExecutable(String command){
  if (IS_NETWARE) {
    return command;
  }
  File jExecutable=null;
  if (IS_AIX) {
    jExecutable=findInDir(JAVA_HOME + "/../sh",command);
  }
  if (jExecutable == null) {
    jExecutable=findInDir(JAVA_HOME + "/../bin",command);
  }
  if (jExecutable != null) {
    return jExecutable.getAbsolutePath();
  }
 else {
    return getJreExecutable(command);
  }
}

=================================================
cloneset:55
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\optional\ScriptRunner.java 
methodname : ScriptRunner.executeScript ( size:74 ) 
-------------------------------------
/** 
 * Do the work.
 * @param execName the name that will be passed to BSF for this script execution.
 * @exception BuildException if something goes wrong executing the script.
 */
public void executeScript(String execName) throws BuildException {
  checkLanguage();
  ClassLoader origLoader=replaceContextLoader();
  try {
    BSFManager m=createManager();
    declareBeans(m);
    if (engine == null) {
      m.exec(getLanguage(),execName,0,0,getScript());
    }
 else {
      engine.exec(execName,0,0,getScript());
    }
  }
 catch (  BSFException be) {
    throw getBuildException(be);
  }
 finally {
    restoreContextLoader(origLoader);
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\optional\ScriptRunner.java 
methodname : ScriptRunner.evaluateScript ( size:74 ) 
-------------------------------------
/** 
 * Evaluate the script.
 * @param execName the name that will be passed to BSF for this script execution.
 * @return the result of the evaluation
 * @exception BuildException if something goes wrong executing the script.
 */
public Object evaluateScript(String execName) throws BuildException {
  checkLanguage();
  ClassLoader origLoader=replaceContextLoader();
  try {
    BSFManager m=createManager();
    declareBeans(m);
    if (engine == null) {
      return m.eval(getLanguage(),execName,0,0,getScript());
    }
    return engine.eval(execName,0,0,getScript());
  }
 catch (  BSFException be) {
    throw getBuildException(be);
  }
 finally {
    restoreContextLoader(origLoader);
  }
}

=================================================
cloneset:56
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\ReflectUtil.java 
methodname : ReflectUtil.invoke ( size:58 ) 
-------------------------------------
/** 
 * Call a method on the object with no parameters.
 * @param obj  the object to invoke the method on.
 * @param methodName the name of the method to call
 * @return the object returned by the method
 */
public static Object invoke(Object obj,String methodName){
  try {
    Method method;
    method=obj.getClass().getMethod(methodName,(Class[])null);
    return method.invoke(obj,(Object[])null);
  }
 catch (  Exception t) {
    throwBuildException(t);
    return null;
  }
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\ReflectUtil.java 
methodname : ReflectUtil.invokeStatic ( size:62 ) 
-------------------------------------
/** 
 * Call a method on the object with no parameters.
 * Note: Unlike the invoke method above, this
 * calls class or static methods, not instance methods.
 * @param obj  the object to invoke the method on.
 * @param methodName the name of the method to call
 * @return the object returned by the method
 */
public static Object invokeStatic(Object obj,String methodName){
  try {
    Method method;
    method=((Class<?>)obj).getMethod(methodName,(Class[])null);
    return method.invoke(obj,(Object[])null);
  }
 catch (  Exception t) {
    throwBuildException(t);
    return null;
  }
}

=================================================
cloneset:57
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\regexp\RegexpFactory.java 
methodname : RegexpFactory.newRegexp ( size:54 ) 
-------------------------------------
/** 
 * Create a new regular expression matcher instance.
 * @param p Project whose ant.regexp.regexpimpl property will be used.
 * @return the matcher instance
 * @throws BuildException on error
 */
public Regexp newRegexp(Project p) throws BuildException {
  String systemDefault=null;
  if (p == null) {
    systemDefault=System.getProperty(MagicNames.REGEXP_IMPL);
  }
 else {
    systemDefault=p.getProperty(MagicNames.REGEXP_IMPL);
  }
  if (systemDefault != null) {
    return createRegexpInstance(systemDefault);
  }
  return new Jdk14RegexpRegexp();
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\regexp\RegexpMatcherFactory.java 
methodname : RegexpMatcherFactory.newRegexpMatcher ( size:54 ) 
-------------------------------------
/** 
 * Create a new regular expression instance.
 * @param p Project whose ant.regexp.regexpimpl property will be used.
 * @return the matcher
 * @throws BuildException on error
 */
public RegexpMatcher newRegexpMatcher(Project p) throws BuildException {
  String systemDefault=null;
  if (p == null) {
    systemDefault=System.getProperty(MagicNames.REGEXP_IMPL);
  }
 else {
    systemDefault=p.getProperty(MagicNames.REGEXP_IMPL);
  }
  if (systemDefault != null) {
    return createInstance(systemDefault);
  }
  return new Jdk14RegexpMatcher();
}

=================================================
cloneset:58
=================================================
------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\XMLFragment.java 
methodname : XMLFragment.createDynamicElement ( size:56 ) 
-------------------------------------
/** 
 * Creates a nested element.
 * @param uri the uri of the nested element
 * @param name the localname of the nested element
 * @param qName the qualified name of the nested element
 * @return an object that the element is applied to
 */
public Object createDynamicElement(String uri,String name,String qName){
  Element e=null;
  if (uri.equals("")) {
    e=doc.createElement(name);
  }
 else {
    e=doc.createElementNS(uri,qName);
  }
  fragment.appendChild(e);
  return new Child(e);
}

------------------------------------
filename : D:\University\repository\clonenotifier2\CloneNotifier2\CloneNotifier2.0\testfile\Application\ant\src\util\XMLFragment.java 
methodname : XMLFragment.Child.createDynamicElement ( size:56 ) 
-------------------------------------
/** 
 * Creates a nested element.
 * @param uri the uri of the nested element
 * @param name the localname of the nested element
 * @param qName the qualified name of the nested element
 * @return an object that the element is applied to
 */
public Object createDynamicElement(String uri,String name,String qName){
  Element e2=null;
  if (uri.equals("")) {
    e2=doc.createElement(name);
  }
 else {
    e2=doc.createElementNS(uri,qName);
  }
  e.appendChild(e2);
  return new Child(e2);
}

