001: /*
002: * The Apache Software License, Version 1.1
003: *
004: *
005: * Copyright (c) 2002 The Apache Software Foundation. All rights
006: * reserved.
007: *
008: * Redistribution and use in source and binary forms, with or without
009: * modification, are permitted provided that the following conditions
010: * are met:
011: *
012: * 1. Redistributions of source code must retain the above copyright
013: * notice, this list of conditions and the following disclaimer.
014: *
015: * 2. Redistributions in binary form must reproduce the above copyright
016: * notice, this list of conditions and the following disclaimer in
017: * the documentation and/or other materials provided with the
018: * distribution.
019: *
020: * 3. The end-user documentation included with the redistribution,
021: * if any, must include the following acknowledgment:
022: * "This product includes software developed by the
023: * Apache Software Foundation (http://www.apache.org/)."
024: * Alternately, this acknowledgment may appear in the software itself,
025: * if and wherever such third-party acknowledgments normally appear.
026: *
027: * 4. The names "WSIF" and "Apache Software Foundation" must
028: * not be used to endorse or promote products derived from this
029: * software without prior written permission. For written
030: * permission, please contact apache@apache.org.
031: *
032: * 5. Products derived from this software may not be called "Apache",
033: * nor may "Apache" appear in their name, without prior written
034: * permission of the Apache Software Foundation.
035: *
036: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
037: * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
038: * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
039: * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
040: * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
041: * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
042: * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
043: * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
044: * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
045: * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
046: * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
047: * SUCH DAMAGE.
048: * ====================================================================
049: *
050: * This software consists of voluntary contributions made by many
051: * individuals on behalf of the Apache Software Foundation and was
052: * originally based on software copyright (c) 2001, 2002, International
053: * Business Machines, Inc., http://www.apache.org. For more
054: * information on the Apache Software Foundation, please see
055: * <http://www.apache.org/>.
056: */
057:
058: package org.apache.wsif.util;
059:
060: import java.io.Serializable;
061:
062: import javax.xml.namespace.QName;
063:
064: import org.apache.wsif.logging.Trc;
065:
066: /**
067: * This class maps a element/java type with its (de)serializers
068: */
069: public class TypeSerializerInfo implements Serializable {
070:
071: private static final long serialVersionUID = 1L;
072:
073: protected QName elementType;
074: protected Class javaType;
075: protected Object serializer;
076: protected Object deserializer;
077:
078: public TypeSerializerInfo(QName elementType, Class javaType,
079: Object serializer, Object deserializer) {
080: Trc
081: .entry(this , elementType, javaType, serializer,
082: deserializer);
083: this .elementType = elementType;
084: this .javaType = javaType;
085: this .serializer = serializer;
086: this .deserializer = deserializer;
087: Trc.exit();
088: }
089:
090: /**
091: * Returns the deserializer.
092: * @return Object
093: */
094: public Object getDeserializer() {
095: Trc.entry(this );
096: Trc.exit(deserializer);
097: return deserializer;
098: }
099:
100: /**
101: * Returns the elementType.
102: * @return QName
103: */
104: public QName getElementType() {
105: Trc.entry(this );
106: Trc.exit(elementType);
107: return elementType;
108: }
109:
110: /**
111: * Returns the javaType.
112: * @return Class
113: */
114: public Class getJavaType() {
115: Trc.entry(this );
116: Trc.exit(javaType);
117: return javaType;
118: }
119:
120: /**
121: * Returns the serializer.
122: * @return Object
123: */
124: public Object getSerializer() {
125: Trc.entry(this );
126: Trc.exit(serializer);
127: return serializer;
128: }
129:
130: /**
131: * Sets the deserializer.
132: * @param deserializer The deserializer to set
133: */
134: public void setDeserializer(Object deserializer) {
135: Trc.entry(this , deserializer);
136: this .deserializer = deserializer;
137: Trc.exit();
138: }
139:
140: /**
141: * Sets the elementType.
142: * @param elementType The elementType to set
143: */
144: public void setElementType(QName elementType) {
145: Trc.entry(this , elementType);
146: this .elementType = elementType;
147: Trc.exit();
148: }
149:
150: /**
151: * Sets the javaType.
152: * @param javaType The javaType to set
153: */
154: public void setJavaType(Class javaType) {
155: Trc.entry(this , javaType);
156: this .javaType = javaType;
157: Trc.exit();
158: }
159:
160: /**
161: * Sets the serializer.
162: * @param serializer The serializer to set
163: */
164: public void setSerializer(Object serializer) {
165: Trc.entry(this , serializer);
166: this .serializer = serializer;
167: Trc.exit();
168: }
169:
170: public String toString() {
171: return "[TypeSerializerInfo elementType=" + elementType + ", "
172: + "javaType=" + javaType + ", " + "serializer="
173: + serializer + ", " + "deserializer=" + deserializer
174: + "]";
175: }
176:
177: }
|