Package org.kie.internal.builder.help
Class KnowledgeBuilderHelper
- java.lang.Object
-
- org.kie.internal.builder.help.KnowledgeBuilderHelper
-
public class KnowledgeBuilderHelper extends java.lang.Object
Provides helper methods for working with JAXB and a Knowledgebase, it takes care of the Classpath issues when mapping against internal type declarations.This api is experimental and thus the classes and the interfaces returned are subject to change.
-
-
Constructor Summary
Constructors Constructor Description KnowledgeBuilderHelper()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String[]
addXsdModel(org.kie.api.io.Resource resource, KnowledgeBuilder kbuilder, com.sun.tools.xjc.Options xjcOpts, java.lang.String systemId)
Generates pojos for a given XSD using XJC and adds them to the specified KnowlegeBase.static DroolsJaxbHelperProvider
getDroolsJaxbHelperProvider()
static javax.xml.bind.JAXBContext
newJAXBContext(java.lang.String[] classNames, java.util.Map<java.lang.String,?> properties, org.kie.api.KieBase kbase)
static javax.xml.bind.JAXBContext
newJAXBContext(java.lang.String[] classNames, org.kie.api.KieBase kbase)
Creates a new JAXBContext, from which the Marshaller and Unmarshaller can be created, which are used by the Transformer pipeline stage.
-
-
-
Method Detail
-
addXsdModel
public static java.lang.String[] addXsdModel(org.kie.api.io.Resource resource, KnowledgeBuilder kbuilder, com.sun.tools.xjc.Options xjcOpts, java.lang.String systemId) throws java.io.IOException
Generates pojos for a given XSD using XJC and adds them to the specified KnowlegeBase.Options xjcOpts = new Options(); xjcOpts.setSchemaLanguage( Language.XMLSCHEMA ); KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); String[] classNames = KnowledgeBuilderHelper.addXsdModel( ResourceFactory.newClassPathResource( "order.xsd", getClass() ), kbuilder, xjcOpts, "xsd" );
- Parameters:
resource
- The resource to the XSD modelkbuilder
- the KnowledgeBuilder where the generated .class files will be placedxjcOpts
- XJC OptionssystemId
- XJC systemId- Returns:
- Returns an array of class names that where generated by the XSD.
- Throws:
java.io.IOException
-
newJAXBContext
public static javax.xml.bind.JAXBContext newJAXBContext(java.lang.String[] classNames, org.kie.api.KieBase kbase) throws javax.xml.bind.JAXBException
Creates a new JAXBContext, from which the Marshaller and Unmarshaller can be created, which are used by the Transformer pipeline stage.- Parameters:
classNames
- An array of class names that can be resolved by this JAXBContextkbase
- The KnowledgeBase- Returns:
- The JAXB Context
- Throws:
javax.xml.bind.JAXBException
-
newJAXBContext
public static javax.xml.bind.JAXBContext newJAXBContext(java.lang.String[] classNames, java.util.Map<java.lang.String,?> properties, org.kie.api.KieBase kbase) throws javax.xml.bind.JAXBException
- Throws:
javax.xml.bind.JAXBException
-
getDroolsJaxbHelperProvider
public static DroolsJaxbHelperProvider getDroolsJaxbHelperProvider()
-
-