KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > google > gwt > dev > util > arg > ArgHandlerScriptStyle


1 /*
2  * Copyright 2006 Google Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License"); you may not
5  * use this file except in compliance with the License. You may obtain a copy of
6  * the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13  * License for the specific language governing permissions and limitations under
14  * the License.
15  */

16 package com.google.gwt.dev.util.arg;
17
18 import com.google.gwt.util.tools.ArgHandler;
19
20 /**
21  * Argument handler for processing the script style flag.
22  */

23 public abstract class ArgHandlerScriptStyle extends ArgHandler {
24
25   public String JavaDoc[] getDefaultArgs() {
26     return new String JavaDoc[]{"-style", "obfuscate"};
27   }
28
29   public String JavaDoc getPurpose() {
30     return "Script output style: OBF[USCATED], PRETTY, or DETAILED (defaults to OBF)";
31   }
32
33   public String JavaDoc getTag() {
34     return "-style";
35   }
36
37   public String JavaDoc[] getTagArgs() {
38     return new String JavaDoc[]{"style"};
39   }
40
41   public int handle(String JavaDoc[] args, int startIndex) {
42     if (startIndex + 1 < args.length) {
43       String JavaDoc style = args[startIndex + 1].toLowerCase();
44       if (style.startsWith("obf")) {
45         setStyleObfuscated();
46         return 1;
47       } else if ("pretty".equals(style)) {
48         setStylePretty();
49         return 1;
50       } else if ("detailed".equals(style)) {
51         setStyleDetailed();
52         return 1;
53       }
54     }
55
56     System.err.println(getTag() + " should be followed by one of");
57     System.err.println(" OBF, PRETTY, or DETAILED");
58     return -1;
59   }
60
61   public abstract void setStyleDetailed();
62
63   public abstract void setStyleObfuscated();
64
65   public abstract void setStylePretty();
66 }
Popular Tags