All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.xml.rpc.encoding.TypeMapping Maven / Gradle / Ivy

There is a newer version: 7.4.3.112-ga112
Show newest version
/*
 * Copyright 2001-2004 The Apache Software Foundation.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package javax.xml.rpc.encoding;

import javax.xml.namespace.QName;

/**
 * The javax.xml.rpc.encoding.TypeMapping is the base
 * interface for the representation of a type mapping. A TypeMapping
 * implementation class may support one or more encoding styles.
 * 

* For its supported encoding styles, a TypeMapping instance * maintains a set of tuples of the type {Java type, * SerializerFactory, * DeserializerFactory, XML type}. * * @version 1.0 */ public interface TypeMapping { /** * Returns the encodingStyle URIs (as String[]) supported by * this TypeMapping instance. A TypeMapping that contains only * encoding style independent serializers and deserializers * returns null from this method. * * @return Array of encodingStyle URIs for the supported * encoding styles */ public String[] getSupportedEncodings(); /** * Sets the encodingStyle URIs supported by this TypeMapping * instance. A TypeMapping that contains only encoding * independent serializers and deserializers requires * null as the parameter for this method. * * @param encodingStyleURIs Array of encodingStyle URIs for the * supported encoding styles */ public void setSupportedEncodings(String[] encodingStyleURIs); /** * Checks whether or not type mapping between specified XML * type and Java type is registered. * * @param javaType Class of the Java type * @param xmlType Qualified name of the XML data type * @return boolean; true if type mapping between the * specified XML type and Java type is registered; * otherwise false */ public boolean isRegistered(Class javaType, QName xmlType); /** * Registers SerializerFactory and DeserializerFactory for a * specific type mapping between an XML type and Java type. * This method replaces any existing registered SerializerFactory * DeserializerFactory instances. * * @param javaType Class of the Java type * @param xmlType Qualified name of the XML data type * @param sf SerializerFactory * @param dsf DeserializerFactory * * @throws javax.xml.rpc.JAXRPCException if there are any errors that * prevent registration */ public void register(Class javaType, QName xmlType, SerializerFactory sf, DeserializerFactory dsf); /** * Gets the SerializerFactory registered for the specified * pair of Java type and XML data type. * * @param javaType Class of the Java type * @param xmlType Qualified name of the XML data type * * @return Registered SerializerFactory or null * if there is no registered factory */ public SerializerFactory getSerializer(Class javaType, QName xmlType); /** * Gets the DeserializerFactory registered for the specified pair * of Java type and XML data type. * * @param javaType Class of the Java type * @param xmlType Qualified name of the XML data type * * @return Registered SerializerFactory or null * if there is no registered factory */ public DeserializerFactory getDeserializer(Class javaType, QName xmlType); /** * Removes the SerializerFactory registered for the specified * pair of Java type and XML data type. * * @param javaType Class of the Java type * @param xmlType Qualified name of the XML data type * * @throws javax.xml.rpc.JAXRPCException if there is any error that prevents * removal of the registered SerializerFactory */ public void removeSerializer(Class javaType, QName xmlType); /** * Removes the DeserializerFactory registered for the specified * pair of Java type and XML data type. * * @param javaType Class of the Java type * @param xmlType Qualified name of the XML data type * * @throws javax.xml.rpc.JAXRPCException if there is any error in removing * the registered DeserializerFactory */ public void removeDeserializer(Class javaType, QName xmlType); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy