src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/xmlschema/bindinfo/BindInfo.java

Print this page

        

*** 33,42 **** --- 33,43 ---- import java.util.Iterator; import java.util.List; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; + import javax.xml.bind.Unmarshaller; import javax.xml.bind.annotation.XmlAnyElement; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlMixed; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType;
*** 44,63 **** import javax.xml.transform.TransformerException; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import com.sun.codemodel.internal.JDocComment; import com.sun.tools.internal.xjc.SchemaCache; import com.sun.tools.internal.xjc.model.CCustomizations; import com.sun.tools.internal.xjc.model.CPluginCustomization; import com.sun.tools.internal.xjc.model.Model; import com.sun.tools.internal.xjc.reader.Ring; import com.sun.tools.internal.xjc.reader.xmlschema.BGMBuilder; import com.sun.xml.internal.bind.annotation.XmlLocation; import com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler; - import com.sun.xml.internal.bind.v2.WellKnownNamespace; - import com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl; import com.sun.xml.internal.xsom.XSComponent; import org.w3c.dom.Element; import org.xml.sax.Locator; --- 45,63 ---- import javax.xml.transform.TransformerException; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import com.sun.codemodel.internal.JDocComment; + import com.sun.xml.internal.bind.v2.WellKnownNamespace; import com.sun.tools.internal.xjc.SchemaCache; import com.sun.tools.internal.xjc.model.CCustomizations; import com.sun.tools.internal.xjc.model.CPluginCustomization; import com.sun.tools.internal.xjc.model.Model; import com.sun.tools.internal.xjc.reader.Ring; import com.sun.tools.internal.xjc.reader.xmlschema.BGMBuilder; import com.sun.xml.internal.bind.annotation.XmlLocation; import com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler; import com.sun.xml.internal.xsom.XSComponent; import org.w3c.dom.Element; import org.xml.sax.Locator;
*** 67,77 **** * We use JAXB ourselves and parse this object from "xs:annotation". * * @author * Kohsuke Kawaguchi (kohsuke,kawaguchi@sun.com) */ ! @XmlRootElement(namespace=WellKnownNamespace.XML_SCHEMA,name="annotation") @XmlType(namespace=WellKnownNamespace.XML_SCHEMA,name="foobar") public final class BindInfo implements Iterable<BIDeclaration> { private BGMBuilder builder; --- 67,77 ---- * We use JAXB ourselves and parse this object from "xs:annotation". * * @author * Kohsuke Kawaguchi (kohsuke,kawaguchi@sun.com) */ ! @XmlRootElement(namespace= WellKnownNamespace.XML_SCHEMA,name="annotation") @XmlType(namespace=WellKnownNamespace.XML_SCHEMA,name="foobar") public final class BindInfo implements Iterable<BIDeclaration> { private BGMBuilder builder;
*** 309,326 **** public final static BindInfo empty = new BindInfo(); /** * Lazily prepared {@link JAXBContext}. */ ! private static JAXBContextImpl customizationContext; ! public static JAXBContextImpl getJAXBContext() { ! synchronized(AnnotationParserFactoryImpl.class) { try { ! if(customizationContext==null) ! customizationContext = new JAXBContextImpl.JAXBContextBuilder().setClasses( ! new Class[] { BindInfo.class, // for xs:annotation BIClass.class, BIConversion.User.class, BIConversion.UserAdapter.class, BIDom.class, --- 309,326 ---- public final static BindInfo empty = new BindInfo(); /** * Lazily prepared {@link JAXBContext}. */ ! private static volatile JAXBContext customizationContext; ! public static JAXBContext getCustomizationContext() { try { ! if (customizationContext == null) { ! synchronized (BindInfo.class) { ! if (customizationContext == null) { ! customizationContext = JAXBContext.newInstance( BindInfo.class, // for xs:annotation BIClass.class, BIConversion.User.class, BIConversion.UserAdapter.class, BIDom.class,
*** 330,346 **** BIXSubstitutable.class, BIEnum.class, BIEnumMember.class, BIGlobalBinding.class, BIProperty.class, ! BISchemaBinding.class ! }).build(); return customizationContext; } catch (JAXBException e) { throw new AssertionError(e); } } } /** * Lazily parsed schema for the binding file. */ --- 330,355 ---- BIXSubstitutable.class, BIEnum.class, BIEnumMember.class, BIGlobalBinding.class, BIProperty.class, ! BISchemaBinding.class); ! } ! } ! } return customizationContext; } catch (JAXBException e) { throw new AssertionError(e); } } + + public static Unmarshaller getCustomizationUnmarshaller() { + try { + return getCustomizationContext().createUnmarshaller(); + } catch (JAXBException e) { + throw new AssertionError(e); + } } /** * Lazily parsed schema for the binding file. */