/* */ }
/* */
/* */ public static JAXBContext createContext(String contextPath, ClassLoader classLoader, Map<String, Object> properties)
/* */ throws JAXBException
/* */ {
/* 148 */ FinalArrayList classes = new FinalArrayList();
/* 149 */ StringTokenizer tokens = new StringTokenizer(contextPath, ":");
/* */
/* 156 */ while (tokens.hasMoreTokens())
/* */ {
/* */ boolean foundJaxbIndex;
/* 157 */ boolean foundObjectFactory = foundJaxbIndex = 0;
/* 158 */ String pkg = tokens.nextToken();
/* */ try
/* */ {
/* 163 */ Class o = classLoader.loadClass(pkg + ".ObjectFactory");
/* 164 */ classes.add(o);
/* 165 */ foundObjectFactory = true;
/* */ }
/* */ catch (ClassNotFoundException e) {
/* */ }
/* */ List indexedClasses;
/* */ try {
/* 172 */ indexedClasses = loadIndexedClasses(pkg, classLoader);
/* */ }
/* */ catch (IOException e) {
/* 175 */ throw new JAXBException(e);
/* */ }
/* 177 */ if (indexedClasses != null) {
/* 178 */ classes.addAll(indexedClasses);
/* 179 */ foundJaxbIndex = true;
/* */ }
/* */
/* 182 */ if ((!foundObjectFactory) && (!foundJaxbIndex)) {
/* 183 */ throw new JAXBException(Messages.BROKEN_CONTEXTPATH.format(new Object[] { pkg }));
/* */ }
/* */
/* */ }
/* */
/* 188 */ return createContext((Class[])classes.toArray(new Class[classes.size()]), properties);
/* */ }