本文整理汇总了Java中com.sun.xml.internal.bind.v2.ClassFactory.create方法的典型用法代码示例。如果您正苦于以下问题:Java ClassFactory.create方法的具体用法?Java ClassFactory.create怎么用?Java ClassFactory.create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.sun.xml.internal.bind.v2.ClassFactory
的用法示例。
在下文中一共展示了ClassFactory.create方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: ArrayReferenceNodeProperty
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
public ArrayReferenceNodeProperty(JAXBContextImpl p, RuntimeReferencePropertyInfo prop) {
super(p, prop, prop.getXmlName(), prop.isCollectionNillable());
for (RuntimeElement e : prop.getElements()) {
JaxBeanInfo bi = p.getOrCreate(e);
expectedElements.put( e.getElementName().getNamespaceURI(),e.getElementName().getLocalPart(), bi );
}
isMixed = prop.isMixed();
if(prop.getWildcard()!=null) {
domHandler = (DomHandler) ClassFactory.create(prop.getDOMHandler());
wcMode = prop.getWildcard();
} else {
domHandler = null;
wcMode = null;
}
}
示例2: SingleReferenceNodeProperty
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
public SingleReferenceNodeProperty(JAXBContextImpl context, RuntimeReferencePropertyInfo prop) {
super(context,prop);
acc = prop.getAccessor().optimize(context);
for (RuntimeElement e : prop.getElements()) {
expectedElements.put( e.getElementName(), context.getOrCreate(e) );
}
if(prop.getWildcard()!=null) {
domHandler = (DomHandler) ClassFactory.create(prop.getDOMHandler());
wcMode = prop.getWildcard();
} else {
domHandler = null;
wcMode = null;
}
}
示例3: createInstance
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
public BeanT createInstance(UnmarshallingContext context) throws IllegalAccessException, InvocationTargetException, InstantiationException, SAXException {
BeanT bean = null;
if (factoryMethod == null){
bean = ClassFactory.create0(jaxbType);
}else {
Object o = ClassFactory.create(factoryMethod);
if( jaxbType.isInstance(o) ){
bean = (BeanT)o;
} else {
throw new InstantiationException("The factory method didn't return a correct object");
}
}
if(xmlLocatorField!=null)
// need to copy because Locator is mutable
try {
xmlLocatorField.set(bean,new LocatorImpl(context.getLocator()));
} catch (AccessorException e) {
context.handleError(e);
}
return bean;
}
示例4: createConstant
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
public JExpression createConstant(Outline outline, XmlString lexical) {
if(isCollection()) return null;
if(adapter==null) return coreType.createConstant(outline, lexical);
// [RESULT] new Adapter().unmarshal(CONSTANT);
JExpression cons = coreType.createConstant(outline, lexical);
Class<? extends XmlAdapter> atype = adapter.getAdapterIfKnown();
// try to run the adapter now rather than later.
if(cons instanceof JStringLiteral && atype!=null) {
JStringLiteral scons = (JStringLiteral) cons;
XmlAdapter a = ClassFactory.create(atype);
try {
Object value = a.unmarshal(scons.str);
if(value instanceof String) {
return JExpr.lit((String)value);
}
} catch (Exception e) {
// assume that we can't eagerly bind this
}
}
return JExpr._new(adapter.getAdapterClass(outline)).invoke("unmarshal").arg(cons);
}
示例5: startElement
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
@Override
public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException {
// create or obtain the Map object
try {
BeanT target = (BeanT) state.getPrev().getTarget();
ValueT mapValue = acc.get(target);
if(mapValue == null)
mapValue = ClassFactory.create(mapImplClass);
else
mapValue.clear();
Stack.push(this.target, target);
Stack.push(map, mapValue);
state.setTarget(mapValue);
} catch (AccessorException e) {
// recover from error by setting a dummy Map that receives and discards the values
handleGenericException(e,true);
state.setTarget(new HashMap());
}
}
示例6: parse
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
public BeanT parse(CharSequence lexical) throws AccessorException, SAXException {
UnmarshallingContext ctxt = UnmarshallingContext.getInstance();
BeanT inst;
if(ctxt!=null)
inst = (BeanT)ctxt.createInstance(ownerClass);
else
// when this runs for parsing enum constants,
// there's no UnmarshallingContext.
inst = ClassFactory.create(ownerClass);
xacc.parse(inst,lexical);
return inst;
}
示例7: getAdapter
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
/**
* Gets the instance of the adapter.
*
* @return
* always non-null.
*/
public final <T extends XmlAdapter> T getAdapter(Class<T> key) {
T v = key.cast(adapters.get(key));
if(v==null) {
v = ClassFactory.create(key);
putAdapter(key,v);
}
return v;
}
示例8: getAdapter
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
private XmlAdapter<OnWireValueT, InMemValueT> getAdapter() {
Coordinator coordinator = Coordinator._getInstance();
if(coordinator!=null)
return coordinator.getAdapter(adapter);
else {
synchronized(this) {
if(staticAdapter==null)
staticAdapter = ClassFactory.create(adapter);
}
return staticAdapter;
}
}
示例9: startPacking
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
public T startPacking(BeanT bean, Accessor<BeanT, T> acc) throws AccessorException {
T collection = acc.get(bean);
if(collection==null) {
collection = ClassFactory.create(implClass);
if(!acc.isAdapted())
acc.set(bean,collection);
}
collection.clear();
return collection;
}
示例10: createInstance
import com.sun.xml.internal.bind.v2.ClassFactory; //导入方法依赖的package包/类
/**
* Creates a new instance of the specified class.
* In the unmarshaller, we need to check the user-specified factory class.
*/
public Object createInstance( Class<?> clazz ) throws SAXException {
if(!factories.isEmpty()) {
Factory factory = factories.get(clazz);
if(factory!=null)
return factory.createInstance();
}
return ClassFactory.create(clazz);
}