Package railo.runtime.net.rpc

Source Code of railo.runtime.net.rpc.TypeMappingUtil

package railo.runtime.net.rpc;

import javax.xml.namespace.QName;
import javax.xml.rpc.encoding.TypeMapping;
import javax.xml.rpc.encoding.TypeMappingRegistry;

import org.apache.axis.encoding.ser.BeanDeserializerFactory;
import org.apache.axis.encoding.ser.BeanSerializerFactory;

import railo.runtime.net.rpc.server.StringDeserializerFactory;
import railo.runtime.net.rpc.server.StringSerializerFactory;
import coldfusion.xml.rpc.QueryBean;

public class TypeMappingUtil {

  public static void registerDefaults(TypeMappingRegistry tmr) {
    TypeMapping tm = tmr.getDefaultTypeMapping();
    if(!tm.isRegistered(QueryBean.class, RPCConstants.QUERY_QNAME))
      tm.register(QueryBean.class,
                RPCConstants.QUERY_QNAME,
                new BeanSerializerFactory(QueryBean.class,RPCConstants.QUERY_QNAME),
                new BeanDeserializerFactory(QueryBean.class,RPCConstants.QUERY_QNAME));
   
    //Adding custom string serialization for non printable characters.
    tm.register(String.class,
        RPCConstants.STRING_QNAME,
        new StringSerializerFactory(String.class, RPCConstants.STRING_QNAME),
        new StringDeserializerFactory(String.class, RPCConstants.STRING_QNAME));
  }
 
  public static void registerBeanTypeMapping(javax.xml.rpc.encoding.TypeMapping tm, Class clazz, QName qName) {
    if(tm.isRegistered(clazz, qName)) return;
    tm.register(
          clazz,
            qName,
          new BeanSerializerFactory(clazz, qName),
          new BeanDeserializerFactory(clazz, qName));
   
   
  }
 
}
TOP

Related Classes of railo.runtime.net.rpc.TypeMappingUtil

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.