*/
public class MetaDataSchemaResolverFactory
{
public static MutableSchemaResolver createSchemaResolver()
{
MultiClassSchemaResolver resolver = new MultiClassSchemaResolver();
// EJB
resolver.mapLocationToClass("ejb-jar_1_1.dtd", EjbJar1xMetaData.class);
resolver.mapLocationToClass("ejb-jar_2_0.dtd", EjbJar20MetaData.class);
resolver.mapLocationToClass("ejb-jar_2_1.xsd", EjbJar21MetaData.class);
resolver.mapLocationToClass("ejb-jar_3_0.xsd", EjbJar30MetaData.class);
resolver.mapLocationToClass("jboss", JBoss50DTDMetaData.class);
resolver.mapLocationToClass("jboss_3_0.dtd", JBoss50DTDMetaData.class);
resolver.mapLocationToClass("jboss_3_2.dtd", JBoss50DTDMetaData.class);
resolver.mapLocationToClass("jboss_4_0.dtd", JBoss50DTDMetaData.class);
resolver.mapLocationToClass("jboss_4_2.dtd", JBoss50DTDMetaData.class);
resolver.mapLocationToClass("jboss_5_0.dtd", JBoss50DTDMetaData.class);
resolver.mapLocationToClass("jboss_5_0.xsd", JBoss50MetaData.class);
resolver.mapLocationToClass("jboss_5_1.xsd", JBoss51MetaData.class);
// client
resolver.mapLocationToClass("application-client_1_3.dtd", ApplicationClient14DTDMetaData.class);
resolver.mapLocationToClass("application-client_1_4.xsd", ApplicationClient14MetaData.class);
resolver.mapLocationToClass("application-client_5.xsd", ApplicationClient5MetaData.class);
resolver.mapLocationToClass("jboss-client_4_0.dtd", JBossClient5DTDMetaData.class);
resolver.mapLocationToClass("jboss-client_4_2.dtd", JBossClient5DTDMetaData.class);
resolver.mapLocationToClass("jboss-client_5_0.dtd", JBossClient5DTDMetaData.class);
resolver.mapLocationToClass("jboss-client_5_0.xsd", JBossClient5MetaData.class);
resolver.mapLocationToClass("jboss-client", JBossClient5DTDMetaData.class);
// WEB
resolver.mapLocationToClass("web-app_2_3.dtd", Web23MetaData.class);
resolver.mapLocationToClass("web-app_2_4.xsd", Web24MetaData.class);
resolver.mapLocationToClass("web-app_2_5.xsd", Web25MetaData.class);
resolver.mapLocationToClass("jboss-web", JBoss50DTDWebMetaData.class);
resolver.mapLocationToClass("jboss-web_4_0.dtd", JBoss4xDTDWebMetaData.class);
resolver.mapLocationToClass("jboss-web_4_2.dtd", JBoss4xDTDWebMetaData.class);
resolver.mapLocationToClass("jboss-web_5_0.dtd", JBoss50DTDWebMetaData.class);
// EAR
resolver.mapLocationToClass("application", Ear13DTDMetaData.class);
resolver.mapLocationToClass("application_1_2.dtd", Ear13DTDMetaData.class);
resolver.mapLocationToClass("application_1_3.dtd", Ear13DTDMetaData.class);
resolver.mapLocationToClass("application_1_4.xsd", Ear14MetaData.class);
resolver.mapLocationToClass("application_5.xsd", Ear50MetaData.class);
resolver.mapLocationToClass("jboss-app_3_2.dtd", JBoss50DTDAppMetaData.class);
resolver.mapLocationToClass("jboss-app_4_0.dtd", JBoss50DTDAppMetaData.class);
resolver.mapLocationToClass("jboss-app_4_2.dtd", JBoss50DTDAppMetaData.class);
resolver.mapLocationToClass("jboss-app_5_0.dtd", JBoss50DTDAppMetaData.class);
resolver.mapLocationToClass("jboss-app_5_0.xsd", JBoss50AppMetaData.class);
// JPA
resolver.mapLocationToClass("persistence_1_0.xsd", PersistenceMetaData.class);
// RA
resolver.mapLocationToClass("connector_1_5.xsd", JCA15MetaData.class);
resolver.mapLocationToClass("connector_1_6.xsd", JCA16MetaData.class);
resolver.mapLocationToClass("jboss-ra_1_0.xsd", JBossRAMetaData.class);
resolver.mapLocationToClasses("jboss-ds_5_0.xsd", ManagedConnectionFactoryDeploymentGroup.class, ConnectionFactoryDeploymentGroup.class);
return resolver;
}