1306 String contentHandlerPkgPrefixes = getContentHandlerPkgPrefixes();
1307
1308 StringTokenizer packagePrefixIter =
1309 new StringTokenizer(contentHandlerPkgPrefixes, "|");
1310
1311 while (packagePrefixIter.hasMoreTokens()) {
1312 String packagePrefix = packagePrefixIter.nextToken().trim();
1313
1314 try {
1315 String clsName = packagePrefix + "." + contentHandlerClassName;
1316 Class<?> cls = null;
1317 try {
1318 cls = Class.forName(clsName);
1319 } catch (ClassNotFoundException e) {
1320 ClassLoader cl = ClassLoader.getSystemClassLoader();
1321 if (cl != null) {
1322 cls = cl.loadClass(clsName);
1323 }
1324 }
1325 if (cls != null) {
1326 return (ContentHandler) cls.newInstance();
1327 }
1328 } catch(Exception ignored) { }
1329 }
1330
1331 return UnknownContentHandler.INSTANCE;
1332 }
1333
1334 private ContentHandler lookupContentHandlerViaProvider(String contentType) {
1335 return AccessController.doPrivileged(
1336 new PrivilegedAction<>() {
1337 @Override
1338 public ContentHandler run() {
1339 ClassLoader cl = ClassLoader.getSystemClassLoader();
1340 ServiceLoader<ContentHandlerFactory> sl =
1341 ServiceLoader.load(ContentHandlerFactory.class, cl);
1342
1343 Iterator<ContentHandlerFactory> iterator = sl.iterator();
1344
1345 ContentHandler handler = null;
1346 while (iterator.hasNext()) {
|
1306 String contentHandlerPkgPrefixes = getContentHandlerPkgPrefixes();
1307
1308 StringTokenizer packagePrefixIter =
1309 new StringTokenizer(contentHandlerPkgPrefixes, "|");
1310
1311 while (packagePrefixIter.hasMoreTokens()) {
1312 String packagePrefix = packagePrefixIter.nextToken().trim();
1313
1314 try {
1315 String clsName = packagePrefix + "." + contentHandlerClassName;
1316 Class<?> cls = null;
1317 try {
1318 cls = Class.forName(clsName);
1319 } catch (ClassNotFoundException e) {
1320 ClassLoader cl = ClassLoader.getSystemClassLoader();
1321 if (cl != null) {
1322 cls = cl.loadClass(clsName);
1323 }
1324 }
1325 if (cls != null) {
1326 @SuppressWarnings("deprecation")
1327 Object tmp = cls.newInstance();
1328 return (ContentHandler) tmp;
1329 }
1330 } catch(Exception ignored) { }
1331 }
1332
1333 return UnknownContentHandler.INSTANCE;
1334 }
1335
1336 private ContentHandler lookupContentHandlerViaProvider(String contentType) {
1337 return AccessController.doPrivileged(
1338 new PrivilegedAction<>() {
1339 @Override
1340 public ContentHandler run() {
1341 ClassLoader cl = ClassLoader.getSystemClassLoader();
1342 ServiceLoader<ContentHandlerFactory> sl =
1343 ServiceLoader.load(ContentHandlerFactory.class, cl);
1344
1345 Iterator<ContentHandlerFactory> iterator = sl.iterator();
1346
1347 ContentHandler handler = null;
1348 while (iterator.hasNext()) {
|