Class XMLContext


  • public class XMLContext
    extends java.lang.Object
    Bootstrap class for Castor XML that allows you to load information about the domain objects used with Castor XML (marshallers and unmarshallers) by various means.
    Since:
    1.1.2
    Author:
    Werner Guttmann
    • Constructor Detail

      • XMLContext

        public XMLContext()
        Creates an instance of XMLContext with an internal XML context.
    • Method Detail

      • addMapping

        public void addMapping​(Mapping mapping)
                        throws MappingException
        Instructs Castor to load class descriptors from the mapping given.
        Parameters:
        mapping - Castor XML mapping (file), from which the required class descriptors will be derived.
        Throws:
        MappingException - If the Mapping cannot be loaded and analyzed successfully.
      • addClass

        public void addClass​(java.lang.Class clazz)
                      throws ResolverException
        Loads the class descriptor for the class instance specified. The use of this method is useful when no mapping is used, as happens when the domain classes has been generated using the XML code generator (in which case instead of a mapping file class descriptor files will be generated).
        Parameters:
        clazz - the class for which the associated descriptor should be loaded.
        Throws:
        ResolverException - in case that resolving the Class fails fatally
      • addClasses

        public void addClasses​(java.lang.Class[] clazzes)
                        throws ResolverException
        Loads the class descriptor for the class instance specified. The use of this method is useful when no mapping is used, as happens when the domain classes hase been generated using the XML code generator (in which case instead of a mapping file class descriptor files will be generated).
        Parameters:
        clazzes - the classes for which the associated descriptor should be loaded.
        Throws:
        ResolverException - in case that resolving the Class fails fatally
      • addPackage

        public void addPackage​(java.lang.String packageName)
                        throws ResolverException
        Loads class descriptors from the package specified. The use of this method is useful when no mapping is used, as happens when the domain classes hase been generated using the XML code generator (in which case instead of a mapping file class descriptor files will be generated).

        Please note that this functionality will work only if you provide the .castor.cdr file with your generated classes (as generated by the XML code generator).

        Parameters:
        packageName - The package name for the (descriptor) classes
        Throws:
        ResolverException - If there's a problem loading class descriptors for the given package.
      • addPackages

        public void addPackages​(java.lang.String[] packageNames)
                         throws ResolverException
        Loads class descriptors from the packages specified. The use of this method is useful when no mapping is used, as happens when the domain classes hase been generated using the XML code generator (in which case instead of a mapping file class descriptor files will be generated).

        Please note that this functionality will work only if you provide the .castor.cdr files with your generated classes (as generated by the XML code generator).

        Parameters:
        packageNames - The package names for the (descriptor) classes
        Throws:
        ResolverException - If there's a problem loading class descriptors for the given package.
      • createMapping

        public Mapping createMapping()
        Creates an instance of a Castor XML specific Mapping instance.
        Returns:
        a Castor XML specific Mapping instance.
      • createMarshaller

        public Marshaller createMarshaller()
        Creates a new Marshaller instance to be used for marshalling.
        Returns:
        A new Marshaller instance.
      • createMappingTool

        public MappingTool createMappingTool()
        To create a MappingTool instance.
        Returns:
        the MappingTool instance ready to use
      • setProperty

        public void setProperty​(java.lang.String propertyName,
                                java.lang.Object value)
        To set properties for marshalling and unmarshalling behavior.
        Parameters:
        propertyName - name of the property to set
        value - the value to set to
      • setProperty

        public void setProperty​(java.lang.String propertyName,
                                boolean value)
        To set properties for marshalling and unmarshalling behavior.
        Parameters:
        propertyName - name of the property to set
        value - the value to set to
      • getProperty

        public java.lang.Object getProperty​(java.lang.String propertyName)
        To get the value of a specific property.
        Parameters:
        propertyName - name of the Property
        Returns:
        the value (Object) of the property
      • getInternalContext

        public InternalContext getInternalContext()
        Deprecated.
        To get the InternalContext as used when instantiating other classes. Mind that this method is only used in tests and should NOT be used in production code!
        Returns:
        the InternalContext used
      • setClassLoader

        public void setClassLoader​(java.lang.ClassLoader classLoader)
        Sets a custom ClassLoader to be used for loading classes.
        Parameters:
        classLoader - A custom ClassLoader.