Java源码示例:com.sun.xml.internal.bind.v2.runtime.ClassBeanInfoImpl
示例1
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例2
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例3
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例4
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例5
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例6
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例7
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例8
@Override
public void startElement(String uri, String local, String qname, Attributes atts) throws SAXException {
if (logger.isLoggable(Level.FINER)) {
logger.log(Level.FINER, "SAXConnector.startElement: {0}:{1}:{2}, attrs: {3}", new Object[]{uri, local, qname, atts});
}
// work gracefully with misconfigured parsers that don't support namespaces
if( uri==null || uri.length()==0 )
uri="";
if( local==null || local.length()==0 )
local=qname;
if( qname==null || qname.length()==0 )
qname=local;
boolean ignorable = true;
StructureLoader sl;
// not null only if element content is processed (StructureLoader is used)
// ugly
if((sl = this.context.getStructureLoader()) != null) {
ignorable = ((ClassBeanInfoImpl)sl.getBeanInfo()).hasElementOnlyContentModel();
}
processText(ignorable);
tagName.uri = uri;
tagName.local = local;
tagName.qname = qname;
tagName.atts = atts;
next.startElement(tagName);
}
示例9
/**
* Completes the initialization.
*
* <p>
* To fix the cyclic reference issue, the main part of the initialization needs to be done
* after a {@link StructureLoader} is set to {@link ClassBeanInfoImpl#loader}.
*/
public void init( JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard) {
UnmarshallerChain chain = new UnmarshallerChain(context);
for (ClassBeanInfoImpl bi = beanInfo; bi != null; bi = bi.superClazz) {
for (int i = bi.properties.length - 1; i >= 0; i--) {
Property p = bi.properties[i];
switch(p.getKind()) {
case ATTRIBUTE:
if(attUnmarshallers==null)
attUnmarshallers = new QNameMap<TransducedAccessor>();
AttributeProperty ap = (AttributeProperty) p;
attUnmarshallers.put(ap.attName.toQName(),ap.xacc);
break;
case ELEMENT:
case REFERENCE:
case MAP:
case VALUE:
p.buildChildElementUnmarshallers(chain,childUnmarshallers);
break;
}
}
}
this.frameSize = chain.getScopeSize();
textHandler = childUnmarshallers.get(StructureLoaderBuilder.TEXT_HANDLER);
catchAll = childUnmarshallers.get(StructureLoaderBuilder.CATCH_ALL);
if(attWildcard!=null) {
attCatchAll = (Accessor<Object,Map<QName,String>>) attWildcard;
// we use attUnmarshallers==null as a sign to skip the attribute processing
// altogether, so if we have an att wildcard we need to have an empty qname map.
if(attUnmarshallers==null)
attUnmarshallers = EMPTY;
} else {
attCatchAll = null;
}
}
示例10
@Override
public void startElement(String uri, String local, String qname, Attributes atts) throws SAXException {
if (logger.isLoggable(Level.FINER)) {
logger.log(Level.FINER, "SAXConnector.startElement: {0}:{1}:{2}, attrs: {3}", new Object[]{uri, local, qname, atts});
}
// work gracefully with misconfigured parsers that don't support namespaces
if( uri==null || uri.length()==0 )
uri="";
if( local==null || local.length()==0 )
local=qname;
if( qname==null || qname.length()==0 )
qname=local;
boolean ignorable = true;
StructureLoader sl;
// not null only if element content is processed (StructureLoader is used)
// ugly
if((sl = this.context.getStructureLoader()) != null) {
ignorable = ((ClassBeanInfoImpl)sl.getBeanInfo()).hasElementOnlyContentModel();
}
processText(ignorable);
tagName.uri = uri;
tagName.local = local;
tagName.qname = qname;
tagName.atts = atts;
next.startElement(tagName);
}
示例11
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例12
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例13
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例14
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例15
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例16
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例17
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}
示例18
public StructureLoader(ClassBeanInfoImpl beanInfo) {
super(true);
this.beanInfo = beanInfo;
}