Package org.jboss.modules.xml
Class ModuleXmlParser
- java.lang.Object
-
- org.jboss.modules.xml.ModuleXmlParser
-
public final class ModuleXmlParser extends java.lang.ObjectA fast, validatingmodule.xmlparser.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceModuleXmlParser.ResourceRootFactoryA factory for resource roots, based on a root path, loader path, and loader name.
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringA_ACTIONSprivate static java.lang.StringA_EXPORTprivate static java.lang.StringA_NAMEprivate static java.lang.StringA_OPTIONALprivate static java.lang.StringA_PATHprivate static java.lang.StringA_PERMISSIONprivate static java.lang.StringA_SERVICESprivate static java.lang.StringA_SLOTprivate static java.lang.StringA_TARGET_NAMEprivate static java.lang.StringA_TARGET_SLOTprivate static java.lang.StringA_VALUEprivate static java.security.AllPermissionALL_PERMISSIONprivate static java.lang.StringD_EXPORTprivate static java.lang.StringD_IMPORTprivate static java.lang.StringD_NONE(package private) static java.security.PermissionsDEFAULT_PERMISSION_COLLECTIONprivate static java.lang.StringE_ARTIFACTprivate static java.lang.StringE_DEPENDENCIESprivate static java.lang.StringE_EXCLUDEprivate static java.lang.StringE_EXCLUDE_SETprivate static java.lang.StringE_EXPORTSprivate static java.lang.StringE_FILTERprivate static java.lang.StringE_GRANTprivate static java.lang.StringE_IMPORTSprivate static java.lang.StringE_INCLUDEprivate static java.lang.StringE_INCLUDE_SETprivate static java.lang.StringE_MAIN_CLASSprivate static java.lang.StringE_MODULEprivate static java.lang.StringE_MODULE_ABSENTprivate static java.lang.StringE_MODULE_ALIASprivate static java.lang.StringE_NATIVE_ARTIFACTprivate static java.lang.StringE_PATHprivate static java.lang.StringE_PATHSprivate static java.lang.StringE_PERMISSIONSprivate static java.lang.StringE_PROPERTIESprivate static java.lang.StringE_PROPERTYprivate static java.lang.StringE_RESOURCE_ROOTprivate static java.lang.StringE_RESOURCESprivate static java.lang.StringE_SYSTEMprivate static java.util.List<java.lang.String>LIST_A_NAMEprivate static java.util.List<java.lang.String>LIST_A_NAME_A_SLOTprivate static java.util.List<java.lang.String>LIST_A_NAME_A_TARGET_NAMEprivate static java.util.List<java.lang.String>LIST_A_PATHprivate static java.util.List<java.lang.String>LIST_A_PERMISSION_A_NAMEprivate static java.lang.StringMODULE_1_0private static java.lang.StringMODULE_1_1private static java.lang.StringMODULE_1_2private static java.lang.StringMODULE_1_3private static java.lang.StringMODULE_1_5
-
Constructor Summary
Constructors Modifier Constructor Description privateModuleXmlParser()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static voidassertNoAttributes(XmlPullParser reader)private static voidcopy(java.io.InputStream in, java.io.OutputStream out)private static voidcreateMavenNativeArtifactLoader(MavenResolver mavenResolver, java.lang.String name, XmlPullParser reader, ModuleSpec.Builder specBuilder)static XmlPullParserExceptionendOfDocument(XmlPullParser reader)private static java.security.PermissionsgetAllPermission()private static XmlPullParserExceptioninvalidModuleName(XmlPullParser reader, ModuleIdentifier expected)private static XmlPullParserExceptionmissingAttributes(XmlPullParser reader, java.util.Set<java.lang.String> required)private static voidparseArtifact(MavenResolver mavenResolver, XmlPullParser reader, ModuleSpec.Builder specBuilder)private static voidparseDependencies(XmlPullParser reader, java.util.ArrayList<DependencySpec> dependencies)private static ModuleSpecparseDocument(MavenResolver mavenResolver, ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier)private static voidparseEndDocument(XmlPullParser reader)private static voidparseFilterList(XmlPullParser reader, MultiplePathFilterBuilder builder)private static voidparseGrant(XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, java.util.ArrayList<PermissionFactory> list)private static voidparseMainClass(XmlPullParser reader, ModuleSpec.Builder specBuilder)private static voidparseModuleAbsentContents(XmlPullParser reader, ModuleIdentifier moduleIdentifier)private static ModuleSpecparseModuleAliasContents(XmlPullParser reader, ModuleIdentifier moduleIdentifier)private static voidparseModuleContents(MavenResolver mavenResolver, XmlPullParser reader, ModuleXmlParser.ResourceRootFactory factory, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, ModuleSpec.Builder specBuilder, java.lang.String rootPath)private static voidparseModuleDependency(XmlPullParser reader, java.util.ArrayList<DependencySpec> dependencies)static ModuleSpecparseModuleXml(ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, java.io.File root, java.io.File moduleInfoFile)Parse amodule.xmlfile.static ModuleSpecparseModuleXml(ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, java.io.InputStream source, java.lang.String moduleInfoFile, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier)Parse amodule.xmlfile.static ModuleSpecparseModuleXml(ModuleXmlParser.ResourceRootFactory factory, MavenResolver mavenResolver, java.lang.String rootPath, java.io.InputStream source, java.lang.String moduleInfoFile, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier)Parse amodule.xmlfile.private static voidparseNativeArtifact(MavenResolver mavenResolver, XmlPullParser reader, ModuleSpec.Builder specBuilder)private static voidparseNoContent(XmlPullParser reader)private static voidparsePath(XmlPullParser reader, boolean include, MultiplePathFilterBuilder builder)private static voidparsePathName(XmlPullParser reader, java.util.Set<java.lang.String> set)private static voidparsePermissions(XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, ModuleSpec.Builder specBuilder)private static voidparseProperties(XmlPullParser reader, ModuleSpec.Builder specBuilder)private static voidparseProperty(XmlPullParser reader, ModuleSpec.Builder specBuilder)private static voidparseResourceRoot(ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleSpec.Builder specBuilder)private static voidparseResources(MavenResolver mavenResolver, ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleSpec.Builder specBuilder)private static ModuleSpecparseRootElement(MavenResolver mavenResolver, ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier)private static java.util.Set<java.lang.String>parseSet(XmlPullParser reader)private static voidparseSet(XmlPullParser reader, boolean include, MultiplePathFilterBuilder builder)private static voidparseSystemDependency(XmlPullParser reader, java.util.ArrayList<DependencySpec> dependencies)private static voidsafeClose(java.io.Closeable closeable)static XmlPullParserExceptionunexpectedContent(XmlPullParser reader)private static XmlPullParserExceptionunknownAttribute(XmlPullParser parser, int index)private static XmlPullParserExceptionunknownAttributeValue(XmlPullParser parser, int index)private static voidunzip(java.io.File src, java.io.File destDir)private static voidvalidateAttributeNamespace(XmlPullParser reader, int index)private static voidvalidateNamespace(XmlPullParser reader)
-
-
-
Field Detail
-
MODULE_1_0
private static final java.lang.String MODULE_1_0
- See Also:
- Constant Field Values
-
MODULE_1_1
private static final java.lang.String MODULE_1_1
- See Also:
- Constant Field Values
-
MODULE_1_2
private static final java.lang.String MODULE_1_2
- See Also:
- Constant Field Values
-
MODULE_1_3
private static final java.lang.String MODULE_1_3
- See Also:
- Constant Field Values
-
MODULE_1_5
private static final java.lang.String MODULE_1_5
- See Also:
- Constant Field Values
-
E_MODULE
private static final java.lang.String E_MODULE
- See Also:
- Constant Field Values
-
E_ARTIFACT
private static final java.lang.String E_ARTIFACT
- See Also:
- Constant Field Values
-
E_NATIVE_ARTIFACT
private static final java.lang.String E_NATIVE_ARTIFACT
- See Also:
- Constant Field Values
-
E_DEPENDENCIES
private static final java.lang.String E_DEPENDENCIES
- See Also:
- Constant Field Values
-
E_RESOURCES
private static final java.lang.String E_RESOURCES
- See Also:
- Constant Field Values
-
E_MAIN_CLASS
private static final java.lang.String E_MAIN_CLASS
- See Also:
- Constant Field Values
-
E_RESOURCE_ROOT
private static final java.lang.String E_RESOURCE_ROOT
- See Also:
- Constant Field Values
-
E_PATH
private static final java.lang.String E_PATH
- See Also:
- Constant Field Values
-
E_EXPORTS
private static final java.lang.String E_EXPORTS
- See Also:
- Constant Field Values
-
E_IMPORTS
private static final java.lang.String E_IMPORTS
- See Also:
- Constant Field Values
-
E_INCLUDE
private static final java.lang.String E_INCLUDE
- See Also:
- Constant Field Values
-
E_EXCLUDE
private static final java.lang.String E_EXCLUDE
- See Also:
- Constant Field Values
-
E_INCLUDE_SET
private static final java.lang.String E_INCLUDE_SET
- See Also:
- Constant Field Values
-
E_EXCLUDE_SET
private static final java.lang.String E_EXCLUDE_SET
- See Also:
- Constant Field Values
-
E_FILTER
private static final java.lang.String E_FILTER
- See Also:
- Constant Field Values
-
E_SYSTEM
private static final java.lang.String E_SYSTEM
- See Also:
- Constant Field Values
-
E_PATHS
private static final java.lang.String E_PATHS
- See Also:
- Constant Field Values
-
E_MODULE_ALIAS
private static final java.lang.String E_MODULE_ALIAS
- See Also:
- Constant Field Values
-
E_MODULE_ABSENT
private static final java.lang.String E_MODULE_ABSENT
- See Also:
- Constant Field Values
-
E_PROPERTIES
private static final java.lang.String E_PROPERTIES
- See Also:
- Constant Field Values
-
E_PROPERTY
private static final java.lang.String E_PROPERTY
- See Also:
- Constant Field Values
-
E_PERMISSIONS
private static final java.lang.String E_PERMISSIONS
- See Also:
- Constant Field Values
-
E_GRANT
private static final java.lang.String E_GRANT
- See Also:
- Constant Field Values
-
A_NAME
private static final java.lang.String A_NAME
- See Also:
- Constant Field Values
-
A_SLOT
private static final java.lang.String A_SLOT
- See Also:
- Constant Field Values
-
A_EXPORT
private static final java.lang.String A_EXPORT
- See Also:
- Constant Field Values
-
A_SERVICES
private static final java.lang.String A_SERVICES
- See Also:
- Constant Field Values
-
A_PATH
private static final java.lang.String A_PATH
- See Also:
- Constant Field Values
-
A_OPTIONAL
private static final java.lang.String A_OPTIONAL
- See Also:
- Constant Field Values
-
A_TARGET_NAME
private static final java.lang.String A_TARGET_NAME
- See Also:
- Constant Field Values
-
A_TARGET_SLOT
private static final java.lang.String A_TARGET_SLOT
- See Also:
- Constant Field Values
-
A_VALUE
private static final java.lang.String A_VALUE
- See Also:
- Constant Field Values
-
A_PERMISSION
private static final java.lang.String A_PERMISSION
- See Also:
- Constant Field Values
-
A_ACTIONS
private static final java.lang.String A_ACTIONS
- See Also:
- Constant Field Values
-
D_NONE
private static final java.lang.String D_NONE
- See Also:
- Constant Field Values
-
D_IMPORT
private static final java.lang.String D_IMPORT
- See Also:
- Constant Field Values
-
D_EXPORT
private static final java.lang.String D_EXPORT
- See Also:
- Constant Field Values
-
LIST_A_NAME
private static final java.util.List<java.lang.String> LIST_A_NAME
-
LIST_A_PATH
private static final java.util.List<java.lang.String> LIST_A_PATH
-
LIST_A_NAME_A_SLOT
private static final java.util.List<java.lang.String> LIST_A_NAME_A_SLOT
-
LIST_A_NAME_A_TARGET_NAME
private static final java.util.List<java.lang.String> LIST_A_NAME_A_TARGET_NAME
-
LIST_A_PERMISSION_A_NAME
private static final java.util.List<java.lang.String> LIST_A_PERMISSION_A_NAME
-
ALL_PERMISSION
private static final java.security.AllPermission ALL_PERMISSION
-
DEFAULT_PERMISSION_COLLECTION
static final java.security.Permissions DEFAULT_PERMISSION_COLLECTION
-
-
Method Detail
-
parseModuleXml
public static ModuleSpec parseModuleXml(ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, java.io.File root, java.io.File moduleInfoFile) throws ModuleLoadException, java.io.IOException
Parse amodule.xmlfile.- Parameters:
moduleLoader- the module loader to use for dependency specificationsmoduleIdentifier- the module identifier of the module to loadroot- the module path rootmoduleInfoFile- theFileof themodule.xmlcontent- Returns:
- a module specification
- Throws:
ModuleLoadException- if a dependency could not be established or another error occursjava.io.IOException- if I/O fails
-
parseModuleXml
public static ModuleSpec parseModuleXml(ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, java.io.InputStream source, java.lang.String moduleInfoFile, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier) throws ModuleLoadException, java.io.IOException
Parse amodule.xmlfile.- Parameters:
factory- the resource root factory to use (must not benull)rootPath- the root path to send in to the resource root factory (must not benull)source- a stream of themodule.xmlcontent (must not benull)moduleInfoFile- theFileof themodule.xmlcontent (must not benull)moduleLoader- the module loader to use for dependency specifications (must not benull)moduleIdentifier- the module identifier of the module to load- Returns:
- a module specification
- Throws:
ModuleLoadException- if a dependency could not be established or another error occursjava.io.IOException- if I/O fails
-
parseModuleXml
public static ModuleSpec parseModuleXml(ModuleXmlParser.ResourceRootFactory factory, MavenResolver mavenResolver, java.lang.String rootPath, java.io.InputStream source, java.lang.String moduleInfoFile, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier) throws ModuleLoadException, java.io.IOException
Parse amodule.xmlfile.- Parameters:
factory- the resource root factory to use (must not benull)mavenResolver- the Maven artifact resolver to use (must not benull)rootPath- the root path to send in to the resource root factory (must not benull)source- a stream of themodule.xmlcontent (must not benull)moduleInfoFile- theFileof themodule.xmlcontent (must not benull)moduleLoader- the module loader to use for dependency specifications (must not benull)moduleIdentifier- the module identifier of the module to load- Returns:
- a module specification
- Throws:
ModuleLoadException- if a dependency could not be established or another error occursjava.io.IOException- if I/O fails
-
unexpectedContent
public static XmlPullParserException unexpectedContent(XmlPullParser reader)
-
endOfDocument
public static XmlPullParserException endOfDocument(XmlPullParser reader)
-
invalidModuleName
private static XmlPullParserException invalidModuleName(XmlPullParser reader, ModuleIdentifier expected)
-
missingAttributes
private static XmlPullParserException missingAttributes(XmlPullParser reader, java.util.Set<java.lang.String> required)
-
unknownAttribute
private static XmlPullParserException unknownAttribute(XmlPullParser parser, int index)
-
unknownAttributeValue
private static XmlPullParserException unknownAttributeValue(XmlPullParser parser, int index)
-
validateNamespace
private static void validateNamespace(XmlPullParser reader) throws XmlPullParserException
- Throws:
XmlPullParserException
-
assertNoAttributes
private static void assertNoAttributes(XmlPullParser reader) throws XmlPullParserException
- Throws:
XmlPullParserException
-
validateAttributeNamespace
private static void validateAttributeNamespace(XmlPullParser reader, int index) throws XmlPullParserException
- Throws:
XmlPullParserException
-
parseDocument
private static ModuleSpec parseDocument(MavenResolver mavenResolver, ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseRootElement
private static ModuleSpec parseRootElement(MavenResolver mavenResolver, ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseModuleAliasContents
private static ModuleSpec parseModuleAliasContents(XmlPullParser reader, ModuleIdentifier moduleIdentifier) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseModuleAbsentContents
private static void parseModuleAbsentContents(XmlPullParser reader, ModuleIdentifier moduleIdentifier) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
getAllPermission
private static java.security.Permissions getAllPermission()
-
parseModuleContents
private static void parseModuleContents(MavenResolver mavenResolver, XmlPullParser reader, ModuleXmlParser.ResourceRootFactory factory, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, ModuleSpec.Builder specBuilder, java.lang.String rootPath) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseDependencies
private static void parseDependencies(XmlPullParser reader, java.util.ArrayList<DependencySpec> dependencies) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseModuleDependency
private static void parseModuleDependency(XmlPullParser reader, java.util.ArrayList<DependencySpec> dependencies) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseSystemDependency
private static void parseSystemDependency(XmlPullParser reader, java.util.ArrayList<DependencySpec> dependencies) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseMainClass
private static void parseMainClass(XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseResources
private static void parseResources(MavenResolver mavenResolver, ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
createMavenNativeArtifactLoader
private static void createMavenNativeArtifactLoader(MavenResolver mavenResolver, java.lang.String name, XmlPullParser reader, ModuleSpec.Builder specBuilder) throws java.io.IOException, XmlPullParserException
- Throws:
java.io.IOExceptionXmlPullParserException
-
parseNativeArtifact
private static void parseNativeArtifact(MavenResolver mavenResolver, XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseArtifact
private static void parseArtifact(MavenResolver mavenResolver, XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseResourceRoot
private static void parseResourceRoot(ModuleXmlParser.ResourceRootFactory factory, java.lang.String rootPath, XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseFilterList
private static void parseFilterList(XmlPullParser reader, MultiplePathFilterBuilder builder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parsePath
private static void parsePath(XmlPullParser reader, boolean include, MultiplePathFilterBuilder builder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseSet
private static java.util.Set<java.lang.String> parseSet(XmlPullParser reader) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseSet
private static void parseSet(XmlPullParser reader, boolean include, MultiplePathFilterBuilder builder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parsePathName
private static void parsePathName(XmlPullParser reader, java.util.Set<java.lang.String> set) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseProperties
private static void parseProperties(XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseProperty
private static void parseProperty(XmlPullParser reader, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parsePermissions
private static void parsePermissions(XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, ModuleSpec.Builder specBuilder) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseGrant
private static void parseGrant(XmlPullParser reader, ModuleLoader moduleLoader, ModuleIdentifier moduleIdentifier, java.util.ArrayList<PermissionFactory> list) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseNoContent
private static void parseNoContent(XmlPullParser reader) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
parseEndDocument
private static void parseEndDocument(XmlPullParser reader) throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserExceptionjava.io.IOException
-
unzip
private static void unzip(java.io.File src, java.io.File destDir) throws java.io.IOException- Throws:
java.io.IOException
-
copy
private static void copy(java.io.InputStream in, java.io.OutputStream out) throws java.io.IOException- Throws:
java.io.IOException
-
safeClose
private static void safeClose(java.io.Closeable closeable)
-
-