org.jvnet.jax_ws_commons.json
Class SchemaConvention

java.lang.Object
  extended by org.codehaus.jettison.mapped.MappedNamespaceConvention
      extended by org.jvnet.jax_ws_commons.json.SchemaConvention
All Implemented Interfaces:
org.codehaus.jettison.Convention

public class SchemaConvention
extends org.codehaus.jettison.mapped.MappedNamespaceConvention

Convention implementation that works with MappedXMLStreamReader and MappedXMLStreamWriter.

This uses a set of known tag names so that each QName maps to a natural JSON property names.

Author:
Kohsuke Kawaguchi

Field Summary
 java.util.Map<java.lang.String,javax.xml.namespace.QName> j2x
          JSON names -> tag names conversion.
 java.util.Map<javax.xml.namespace.QName,java.lang.String> x2j
          Tag names -> JSON names conversion.
 
Constructor Summary
SchemaConvention(java.util.Collection<javax.xml.namespace.QName> tagNames)
           
 
Method Summary
 java.lang.String createKey(java.lang.String p, java.lang.String ns, java.lang.String local)
          Convert XML name to JSON.
 javax.xml.namespace.QName createQName(java.lang.String rootName, org.codehaus.jettison.Node node)
           
 boolean isElement(java.lang.String p, java.lang.String ns, java.lang.String local)
           
 
Methods inherited from class org.codehaus.jettison.mapped.MappedNamespaceConvention
createAttributeKey, processAttributesAndNamespaces
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

x2j

public final java.util.Map<javax.xml.namespace.QName,java.lang.String> x2j
Tag names -> JSON names conversion.


j2x

public final java.util.Map<java.lang.String,javax.xml.namespace.QName> j2x
JSON names -> tag names conversion.

Constructor Detail

SchemaConvention

public SchemaConvention(java.util.Collection<javax.xml.namespace.QName> tagNames)
Method Detail

createQName

public javax.xml.namespace.QName createQName(java.lang.String rootName,
                                             org.codehaus.jettison.Node node)
Specified by:
createQName in interface org.codehaus.jettison.Convention
Overrides:
createQName in class org.codehaus.jettison.mapped.MappedNamespaceConvention

createKey

public java.lang.String createKey(java.lang.String p,
                                  java.lang.String ns,
                                  java.lang.String local)
Convert XML name to JSON.

Overrides:
createKey in class org.codehaus.jettison.mapped.MappedNamespaceConvention

isElement

public boolean isElement(java.lang.String p,
                         java.lang.String ns,
                         java.lang.String local)
Overrides:
isElement in class org.codehaus.jettison.mapped.MappedNamespaceConvention