001: /*
002: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
003: *
004: * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
005: *
006: * The contents of this file are subject to the terms of either the GNU
007: * General Public License Version 2 only ("GPL") or the Common Development
008: * and Distribution License("CDDL") (collectively, the "License"). You
009: * may not use this file except in compliance with the License. You can obtain
010: * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
011: * or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
012: * language governing permissions and limitations under the License.
013: *
014: * When distributing the software, include this License Header Notice in each
015: * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
016: * Sun designates this particular file as subject to the "Classpath" exception
017: * as provided by Sun in the GPL Version 2 section of the License file that
018: * accompanied this code. If applicable, add the following below the License
019: * Header, with the fields enclosed by brackets [] replaced by your own
020: * identifying information: "Portions Copyrighted [year]
021: * [name of copyright owner]"
022: *
023: * Contributor(s):
024: *
025: * If you wish your version of this file to be governed by only the CDDL or
026: * only the GPL Version 2, indicate your decision by adding "[Contributor]
027: * elects to include this software in this distribution under the [CDDL or GPL
028: * Version 2] license." If you don't indicate a single choice of license, a
029: * recipient has the option to distribute your version of this file under
030: * either the CDDL, the GPL Version 2 or to extend the choice of license to
031: * its licensees as provided above. However, if you add GPL Version 2 code
032: * and therefore, elected the GPL Version 2 license, then the option applies
033: * only if the new code is made subject to such option by the copyright
034: * holder.
035: */
036:
037: package com.sun.tools.ws.processor.modeler;
038:
039: import com.sun.tools.ws.processor.model.java.JavaSimpleType;
040:
041: import java.util.HashMap;
042: import java.util.Map;
043:
044: /**
045: *
046: * @author WS Development Team
047: */
048: public class JavaSimpleTypeCreator implements ModelerConstants {
049:
050: /*
051: * Mapped JavaSimpleTypes
052: */
053: public JavaSimpleType BOOLEAN_JAVATYPE;
054: public JavaSimpleType BOXED_BOOLEAN_JAVATYPE;
055: public JavaSimpleType BYTE_JAVATYPE;
056: public JavaSimpleType BYTE_ARRAY_JAVATYPE;
057: public JavaSimpleType BOXED_BYTE_JAVATYPE;
058: public JavaSimpleType BOXED_BYTE_ARRAY_JAVATYPE;
059: public JavaSimpleType DOUBLE_JAVATYPE;
060: public JavaSimpleType BOXED_DOUBLE_JAVATYPE;
061: public JavaSimpleType FLOAT_JAVATYPE;
062: public JavaSimpleType BOXED_FLOAT_JAVATYPE;
063: public JavaSimpleType INT_JAVATYPE;
064: public JavaSimpleType BOXED_INTEGER_JAVATYPE;
065: public JavaSimpleType LONG_JAVATYPE;
066: public JavaSimpleType BOXED_LONG_JAVATYPE;
067: public JavaSimpleType SHORT_JAVATYPE;
068: public JavaSimpleType BOXED_SHORT_JAVATYPE;
069: public JavaSimpleType DECIMAL_JAVATYPE;
070: public JavaSimpleType BIG_INTEGER_JAVATYPE;
071: public JavaSimpleType CALENDAR_JAVATYPE;
072: public JavaSimpleType DATE_JAVATYPE;
073: public JavaSimpleType STRING_JAVATYPE;
074: public JavaSimpleType STRING_ARRAY_JAVATYPE;
075: public JavaSimpleType QNAME_JAVATYPE;
076: public JavaSimpleType VOID_JAVATYPE;
077: public JavaSimpleType OBJECT_JAVATYPE;
078: public JavaSimpleType SOAPELEMENT_JAVATYPE;
079: public JavaSimpleType URI_JAVATYPE;
080:
081: // Attachment types
082: public JavaSimpleType IMAGE_JAVATYPE;
083: public JavaSimpleType MIME_MULTIPART_JAVATYPE;
084: public JavaSimpleType SOURCE_JAVATYPE;
085: public JavaSimpleType DATA_HANDLER_JAVATYPE;
086:
087: // bug fix: 4923650
088: private Map javaTypes = new HashMap();
089:
090: public JavaSimpleTypeCreator() {
091: BOOLEAN_JAVATYPE = new JavaSimpleType(BOOLEAN_CLASSNAME,
092: FALSE_STR);
093: javaTypes.put(BOOLEAN_CLASSNAME, BOOLEAN_JAVATYPE);
094: BOXED_BOOLEAN_JAVATYPE = new JavaSimpleType(
095: BOXED_BOOLEAN_CLASSNAME, NULL_STR);
096: javaTypes.put(BOXED_BOOLEAN_CLASSNAME, BOXED_BOOLEAN_JAVATYPE);
097: BYTE_JAVATYPE = new JavaSimpleType(BYTE_CLASSNAME, "(byte)"
098: + ZERO_STR);
099: javaTypes.put(BYTE_CLASSNAME, BYTE_JAVATYPE);
100: BYTE_ARRAY_JAVATYPE = new JavaSimpleType(BYTE_ARRAY_CLASSNAME,
101: NULL_STR);
102: javaTypes.put(BYTE_ARRAY_CLASSNAME, BYTE_ARRAY_JAVATYPE);
103: BOXED_BYTE_JAVATYPE = new JavaSimpleType(BOXED_BYTE_CLASSNAME,
104: NULL_STR);
105: javaTypes.put(BOXED_BYTE_CLASSNAME, BOXED_BYTE_JAVATYPE);
106: BOXED_BYTE_ARRAY_JAVATYPE = new JavaSimpleType(
107: BOXED_BYTE_ARRAY_CLASSNAME, NULL_STR);
108: javaTypes.put(BOXED_BYTE_ARRAY_CLASSNAME,
109: BOXED_BYTE_ARRAY_JAVATYPE);
110: DOUBLE_JAVATYPE = new JavaSimpleType(DOUBLE_CLASSNAME, ZERO_STR);
111: javaTypes.put(DOUBLE_CLASSNAME, DOUBLE_JAVATYPE);
112: BOXED_DOUBLE_JAVATYPE = new JavaSimpleType(
113: BOXED_DOUBLE_CLASSNAME, NULL_STR);
114: javaTypes.put(BOXED_DOUBLE_CLASSNAME, BOXED_DOUBLE_JAVATYPE);
115: FLOAT_JAVATYPE = new JavaSimpleType(FLOAT_CLASSNAME, ZERO_STR);
116: javaTypes.put(FLOAT_CLASSNAME, FLOAT_JAVATYPE);
117: BOXED_FLOAT_JAVATYPE = new JavaSimpleType(
118: BOXED_FLOAT_CLASSNAME, NULL_STR);
119: javaTypes.put(BOXED_FLOAT_CLASSNAME, BOXED_FLOAT_JAVATYPE);
120: INT_JAVATYPE = new JavaSimpleType(INT_CLASSNAME, ZERO_STR);
121: javaTypes.put(INT_CLASSNAME, INT_JAVATYPE);
122: BOXED_INTEGER_JAVATYPE = new JavaSimpleType(
123: BOXED_INTEGER_CLASSNAME, NULL_STR);
124: javaTypes.put(BOXED_INTEGER_CLASSNAME, BOXED_INTEGER_JAVATYPE);
125: LONG_JAVATYPE = new JavaSimpleType(LONG_CLASSNAME, ZERO_STR);
126: javaTypes.put(LONG_CLASSNAME, LONG_JAVATYPE);
127: BOXED_LONG_JAVATYPE = new JavaSimpleType(BOXED_LONG_CLASSNAME,
128: NULL_STR);
129: javaTypes.put(BOXED_LONG_CLASSNAME, BOXED_LONG_JAVATYPE);
130: SHORT_JAVATYPE = new JavaSimpleType(SHORT_CLASSNAME, "(short)"
131: + ZERO_STR);
132: javaTypes.put(SHORT_CLASSNAME, SHORT_JAVATYPE);
133: BOXED_SHORT_JAVATYPE = new JavaSimpleType(
134: BOXED_SHORT_CLASSNAME, NULL_STR);
135: javaTypes.put(BOXED_SHORT_CLASSNAME, BOXED_SHORT_JAVATYPE);
136: DECIMAL_JAVATYPE = new JavaSimpleType(BIGDECIMAL_CLASSNAME,
137: NULL_STR);
138: javaTypes.put(BIGDECIMAL_CLASSNAME, DECIMAL_JAVATYPE);
139: BIG_INTEGER_JAVATYPE = new JavaSimpleType(BIGINTEGER_CLASSNAME,
140: NULL_STR);
141: javaTypes.put(BIGINTEGER_CLASSNAME, BIG_INTEGER_JAVATYPE);
142: CALENDAR_JAVATYPE = new JavaSimpleType(CALENDAR_CLASSNAME,
143: NULL_STR);
144: javaTypes.put(CALENDAR_CLASSNAME, CALENDAR_JAVATYPE);
145: DATE_JAVATYPE = new JavaSimpleType(DATE_CLASSNAME, NULL_STR);
146: javaTypes.put(DATE_CLASSNAME, DATE_JAVATYPE);
147: STRING_JAVATYPE = new JavaSimpleType(STRING_CLASSNAME, NULL_STR);
148: javaTypes.put(STRING_CLASSNAME, STRING_JAVATYPE);
149: STRING_ARRAY_JAVATYPE = new JavaSimpleType(
150: STRING_ARRAY_CLASSNAME, NULL_STR);
151: javaTypes.put(STRING_ARRAY_CLASSNAME, STRING_ARRAY_JAVATYPE);
152: QNAME_JAVATYPE = new JavaSimpleType(QNAME_CLASSNAME, NULL_STR);
153: javaTypes.put(QNAME_CLASSNAME, QNAME_JAVATYPE);
154:
155: VOID_JAVATYPE = new JavaSimpleType(VOID_CLASSNAME, null);
156: javaTypes.put(VOID_CLASSNAME, VOID_JAVATYPE);
157: OBJECT_JAVATYPE = new JavaSimpleType(OBJECT_CLASSNAME, null);
158: javaTypes.put(OBJECT_CLASSNAME, OBJECT_JAVATYPE);
159: SOAPELEMENT_JAVATYPE = new JavaSimpleType(
160: SOAPELEMENT_CLASSNAME, null);
161: javaTypes.put(SOAPELEMENT_CLASSNAME, SOAPELEMENT_JAVATYPE);
162: URI_JAVATYPE = new JavaSimpleType(URI_CLASSNAME, null);
163: javaTypes.put(URI_CLASSNAME, URI_JAVATYPE);
164:
165: // Attachment types
166: IMAGE_JAVATYPE = new JavaSimpleType(IMAGE_CLASSNAME, null);
167: javaTypes.put(IMAGE_CLASSNAME, IMAGE_JAVATYPE);
168: MIME_MULTIPART_JAVATYPE = new JavaSimpleType(
169: MIME_MULTIPART_CLASSNAME, null);
170: javaTypes
171: .put(MIME_MULTIPART_CLASSNAME, MIME_MULTIPART_JAVATYPE);
172: SOURCE_JAVATYPE = new JavaSimpleType(SOURCE_CLASSNAME, null);
173: javaTypes.put(SOURCE_CLASSNAME, SOURCE_JAVATYPE);
174: DATA_HANDLER_JAVATYPE = new JavaSimpleType(
175: DATA_HANDLER_CLASSNAME, null);
176: javaTypes.put(DATA_HANDLER_CLASSNAME, DATA_HANDLER_JAVATYPE);
177: }
178:
179: // bug fix: 4923650
180: public JavaSimpleType getJavaSimpleType(String classname) {
181: return (JavaSimpleType) javaTypes.get(classname);
182: }
183: }
|