KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > celtix > tools > common > ProcessorEnvironment


1 package org.objectweb.celtix.tools.common;
2
3 import java.io.*;
4 import java.util.*;
5 import org.xml.sax.InputSource JavaDoc;
6 import org.objectweb.celtix.tools.utils.PropertyUtil;
7 import org.objectweb.celtix.tools.utils.URIParserUtil;
8
9 public class ProcessorEnvironment {
10
11     private Map<String JavaDoc, Object JavaDoc> paramMap;
12     private String JavaDoc packageName;
13     private Map<String JavaDoc, String JavaDoc> namespacePackageMap = new HashMap<String JavaDoc, String JavaDoc>();
14     private Map<String JavaDoc, String JavaDoc> excludeNamespacePackageMap = new HashMap<String JavaDoc, String JavaDoc>();
15     private final Map<String JavaDoc, InputSource JavaDoc> jaxbBindingFiles = new HashMap<String JavaDoc, InputSource JavaDoc>();
16
17     public ProcessorEnvironment() {
18     }
19
20     public void loadDefaultNS2Pck() {
21         try {
22             PropertyUtil properties = new PropertyUtil();
23             properties.load(getResourceAsStream("toolspec/toolspecs/namespace2package.cfg"));
24             namespacePackageMap.putAll(properties.getMaps());
25         } catch (IOException e) {
26             e.printStackTrace();
27         }
28     }
29
30     public void loadDefaultExcludes() {
31         try {
32             PropertyUtil properties = new PropertyUtil();
33             properties.load(getResourceAsStream("toolspec/toolspecs/wsdltojavaexclude.cfg"));
34             excludeNamespacePackageMap.putAll(properties.getMaps());
35         } catch (IOException e) {
36             e.printStackTrace();
37         }
38     }
39
40     private InputStream getResourceAsStream(String JavaDoc file) throws IOException {
41         return ProcessorEnvironment.class.getResourceAsStream(file);
42     }
43
44     public void setParameters(Map<String JavaDoc, Object JavaDoc> map) {
45         this.paramMap = map;
46     }
47
48     public boolean containsKey(String JavaDoc key) {
49         return (paramMap == null) ? false : paramMap.containsKey(key);
50     }
51
52     public Object JavaDoc get(String JavaDoc key) {
53         return (paramMap == null) ? null : paramMap.get(key);
54     }
55
56     public Object JavaDoc get(String JavaDoc key, Object JavaDoc defaultValue) {
57         if (!optionSet(key)) {
58             return defaultValue;
59         } else {
60             return get(key);
61         }
62     }
63
64     public boolean getBooleanValue(String JavaDoc key, String JavaDoc defaultValue) {
65         return Boolean.valueOf((String JavaDoc)get(key, defaultValue)).booleanValue();
66     }
67
68     public void put(String JavaDoc key, Object JavaDoc value) {
69         if (paramMap == null) {
70             paramMap = new HashMap<String JavaDoc, Object JavaDoc>();
71         }
72         paramMap.put(key, value);
73     }
74
75     public void remove(String JavaDoc key) {
76         if (paramMap == null) {
77             return;
78         }
79         paramMap.remove(key);
80     }
81
82     public boolean optionSet(String JavaDoc key) {
83         return (get(key) == null) ? false : true;
84     }
85
86     public boolean isVerbose() {
87         if (get(ToolConstants.CFG_VERBOSE) == null) {
88             return false;
89         } else {
90             return get(ToolConstants.CFG_VERBOSE) == ToolConstants.CFG_VERBOSE;
91         }
92     }
93
94     public boolean validateWSDL() {
95         return get(ToolConstants.CFG_VALIDATE_WSDL) != null;
96
97     }
98
99     public void addNamespacePackageMap(String JavaDoc namespace, String JavaDoc pn) {
100         this.namespacePackageMap.put(namespace, pn);
101     }
102
103     private String JavaDoc mapNamespaceToPackageName(String JavaDoc ns) {
104         return this.namespacePackageMap.get(ns);
105     }
106
107     public boolean hasNamespace(String JavaDoc ns) {
108         return this.namespacePackageMap.containsKey(ns);
109     }
110
111     public void addExcludeNamespacePackageMap(String JavaDoc namespace, String JavaDoc pn) {
112         this.excludeNamespacePackageMap.put(namespace, pn);
113     }
114
115     public boolean hasExcludeNamespace(String JavaDoc ns) {
116         return this.excludeNamespacePackageMap.containsKey(ns);
117     }
118
119     public String JavaDoc getExcludePackageName(String JavaDoc ns) {
120         return this.excludeNamespacePackageMap.get(ns);
121     }
122
123     public void setPackageName(String JavaDoc pkgName) {
124         this.packageName = pkgName;
125     }
126
127     public String JavaDoc getPackageName() {
128         return this.packageName;
129     }
130
131     public String JavaDoc mapPackageName(String JavaDoc ns) {
132         if (hasNamespace(ns)) {
133             return mapNamespaceToPackageName(ns);
134         } else {
135             return getPackageName();
136         }
137     }
138
139     public String JavaDoc getCustomizedNS(String JavaDoc ns) {
140         return URIParserUtil.getNamespace(mapPackageName(ns));
141     }
142
143     public void addJaxbBindingFile(String JavaDoc location, InputSource JavaDoc is) {
144         this.jaxbBindingFiles.put(location, is);
145     }
146
147     public Map<String JavaDoc, InputSource JavaDoc> getJaxbBindingFile() {
148         return this.jaxbBindingFiles;
149     }
150
151     public boolean isExcludeNamespaceEnabled() {
152         return excludeNamespacePackageMap.size() > 0;
153     }
154 }
155
Popular Tags