ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/AntTasks/source/net/douglasthrift/anttasks/CommandTask.java
Revision: 1112
Committed: 2008-11-07T00:35:05-08:00 (16 years, 7 months ago) by douglas
File size: 2044 byte(s)
Log Message:
Progress on AAPT Package, needs upToDate still.

File Contents

# User Rev Content
1 douglas 1112 // Command Task
2 douglas 1107 //
3     // Douglas Thrift
4     //
5     // $Id$
6    
7     /* Copyright 2008 Douglas Thrift
8     *
9     * Licensed under the Apache License, Version 2.0 (the "License");
10     * you may not use this file except in compliance with the License.
11     * You may obtain a copy of the License at
12     *
13     * http://www.apache.org/licenses/LICENSE-2.0
14     *
15     * Unless required by applicable law or agreed to in writing, software
16     * distributed under the License is distributed on an "AS IS" BASIS,
17     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18     * See the License for the specific language governing permissions and
19     * limitations under the License.
20     */
21    
22     package net.douglasthrift.anttasks;
23    
24 douglas 1112 import java.io.File;
25    
26 douglas 1107 import org.apache.tools.ant.Task;
27 douglas 1112 import org.apache.tools.ant.taskdefs.ExecTask;
28     import org.apache.tools.ant.types.Path;
29     import org.apache.tools.ant.types.Reference;
30 douglas 1107
31 douglas 1112 public abstract class CommandTask extends Task
32 douglas 1107 {
33 douglas 1112 protected ExecTask command_;
34    
35     @Override
36 douglas 1108 public void execute()
37     {
38 douglas 1112 command_.execute();
39 douglas 1108 }
40 douglas 1112
41     protected void command(String command)
42     {
43     command_ = (ExecTask)getProject().createTask("exec");
44    
45     command_.setTaskName(getTaskName());
46     command_.setExecutable(command);
47     command_.setFailonerror(true);
48     }
49    
50     protected void argument(File file)
51     {
52     command_.createArg().setFile(file);
53     }
54    
55     protected void argument(Path path)
56     {
57     command_.createArg().setPath(path);
58     }
59    
60     protected void argument(Reference reference)
61     {
62     command_.createArg().setPathref(reference);
63     }
64    
65     protected void argument(String value)
66     {
67     command_.createArg().setValue(value);
68     }
69    
70     protected void arguments(String line)
71     {
72     command_.createArg().setLine(line);
73     }
74    
75     protected void arguments(Object... objects)
76     {
77     for (Object object : objects)
78     if (object instanceof File)
79     argument((File)object);
80     else if (object instanceof Path)
81     argument((Path)object);
82     else if (object instanceof Reference)
83     argument((Reference)object);
84     else if (object instanceof String)
85     argument((String)object);
86     else
87     assert (false);
88     }
89 douglas 1107 }

Properties

Name Value
svn:eol-style native
svn:keywords Id
svn:mergeinfo