1 57 58 package com.sun.org.apache.xerces.internal.impl.dv; 59 60 import com.sun.org.apache.xerces.internal.util.SymbolHash; 61 import com.sun.org.apache.xerces.internal.xs.XSObjectList; 62 63 79 public abstract class SchemaDVFactory { 80 81 private static final String DEFAULT_FACTORY_CLASS = "com.sun.org.apache.xerces.internal.impl.dv.xs.SchemaDVFactoryImpl"; 82 83 90 public static synchronized final SchemaDVFactory getInstance() throws DVFactoryException { 91 return getInstance(DEFAULT_FACTORY_CLASS); 92 } 94 95 103 public static synchronized final SchemaDVFactory getInstance(String factoryClass) throws DVFactoryException { 104 105 try { 106 return (SchemaDVFactory)(ObjectFactory.newInstance( 108 factoryClass, ObjectFactory.findClassLoader(), true)); 109 } catch (ClassCastException e4) { 110 throw new DVFactoryException("Schema factory class " + factoryClass + " does not extend from SchemaDVFactory."); 111 } 112 113 } 114 115 protected SchemaDVFactory(){} 117 118 129 public abstract XSSimpleType getBuiltInType(String name); 130 131 137 public abstract SymbolHash getBuiltInTypes(); 138 139 150 public abstract XSSimpleType createTypeRestriction(String name, String targetNamespace, 151 short finalSet, XSSimpleType base, 152 XSObjectList annotations); 153 154 165 public abstract XSSimpleType createTypeList(String name, String targetNamespace, 166 short finalSet, XSSimpleType itemType, 167 XSObjectList annotations); 168 169 180 public abstract XSSimpleType createTypeUnion(String name, String targetNamespace, 181 short finalSet, XSSimpleType[] memberTypes, 182 XSObjectList annotations); 183 184 } 185 | Popular Tags |