001    // package org.apache.tools.ant.types;
002    
003    package escjava.ant;
004    
005    // import java.io.File;
006    // import java.util.StringTokenizer;
007    // import java.util.Vector;
008    // import java.util.ArrayList;
009    // import java.util.List;
010    // import java.util.ListIterator;
011    // import java.util.LinkedList;
012    
013    // import org.apache.tools.ant.BuildException;
014    // import org.apache.tools.ant.ProjectComponent;
015    // import org.apache.tools.ant.util.StringUtils;
016    
017    
018    // /**
019    //  * Commandline objects help handling command lines specifying
020    //  * processes to execute.
021    //  *
022    //  * <P> The class can be used to define a command line as nested elements or as a
023    //  * helper to define a command line by an application. </p>
024    //  *
025    //  * <code>
026    //  * <someelement><br/>
027    //  *   <acommandline executable="/executable/to/run"><br/>
028    //  *     <argument value="argument 1" /><br/>
029    //  *     <argument line="argument_1 argument_2 argument_3" /><br/>
030    //  *     <argument value="argument 4" /><br/>
031    //  *   </acommandline><br/>
032    //  * </someelement><br/>
033    //  * </code>
034    //  * The element <code>someelement</code> must provide a method
035    //  * <code>createAcommandline</code> which returns an instance of this
036    //  * class.
037    //  *
038    //  * @author thomas.haas@softwired-inc.com
039    //  * @author Stefan Bodewig
040    //  */
041    public class Commandline implements Cloneable
042    {
043    //   /*@  public normal_behavior
044    //     @   requires toProcess != null;
045    //     @*/
046    //   public /*@ pure @*/ Commandline(String toProcess);
047    
048    //   /*@ public normal_behavior
049    //     @     
050    //     @*/
051    //   public /*@ pure @*/ Commandline();
052    
053    //   /*@  public normal_behavior
054    //     @    ensures \result != null;
055    //     @*/
056    //   public /*@ pure @*/ Argument createArgument();
057        
058    //   /*@  public normal_behavior
059    //     @    ensures \result != null;
060    //     @*/
061    //   public static String toString(String [] line);
062    
063    }