aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/java/awt/datatransfer
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/java/awt/datatransfer')
-rw-r--r--libjava/classpath/java/awt/datatransfer/DataFlavor.java50
1 files changed, 30 insertions, 20 deletions
diff --git a/libjava/classpath/java/awt/datatransfer/DataFlavor.java b/libjava/classpath/java/awt/datatransfer/DataFlavor.java
index 32bf4d6..788ae6d 100644
--- a/libjava/classpath/java/awt/datatransfer/DataFlavor.java
+++ b/libjava/classpath/java/awt/datatransfer/DataFlavor.java
@@ -157,38 +157,42 @@ public class DataFlavor implements java.io.Externalizable, Cloneable
ClassLoader classLoader)
throws ClassNotFoundException
{
+ // Bootstrap
try
{
- return(Class.forName(className));
+ return Class.forName(className);
}
- catch(Exception e) { ; }
- // Commented out for Java 1.1
- /*
- try
+ catch(ClassNotFoundException cnfe)
{
- return(className.getClass().getClassLoader().findClass(className));
+ // Ignored.
}
- catch(Exception e) { ; }
+ // System
try
{
- return(ClassLoader.getSystemClassLoader().findClass(className));
+ ClassLoader loader = ClassLoader.getSystemClassLoader();
+ return Class.forName(className, true, loader);
}
- catch(Exception e) { ; }
- */
-
- // FIXME: What is the context class loader?
- /*
+ catch(ClassNotFoundException cnfe)
+ {
+ // Ignored.
+ }
+
+ // Context
try
{
+ ClassLoader loader = Thread.currentThread().getContextClassLoader();
+ return Class.forName(className, true, loader);
}
- catch(Exception e) { ; }
- */
-
+ catch(ClassNotFoundException cnfe)
+ {
+ // Ignored.
+ }
+
if (classLoader != null)
- return(classLoader.loadClass(className));
- else
- throw new ClassNotFoundException(className);
+ return Class.forName(className, true, classLoader);
+
+ throw new ClassNotFoundException(className);
}
private static Class getRepresentationClassFromMime(String mimeString,
@@ -203,7 +207,13 @@ public class DataFlavor implements java.io.Externalizable, Cloneable
}
catch(Exception e)
{
- throw new IllegalArgumentException("classname: " + e.getMessage());
+ IllegalArgumentException iae;
+ iae = new IllegalArgumentException("mimeString: "
+ + mimeString
+ + " classLoader: "
+ + classLoader);
+ iae.initCause(e);
+ throw iae;
}
}
else