summaryrefslogtreecommitdiff
path: root/gnu/classpath/ServiceProviderLoadingAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/classpath/ServiceProviderLoadingAction.java')
-rw-r--r--gnu/classpath/ServiceProviderLoadingAction.java11
1 files changed, 5 insertions, 6 deletions
diff --git a/gnu/classpath/ServiceProviderLoadingAction.java b/gnu/classpath/ServiceProviderLoadingAction.java
index 78a11cd50..87e662bf0 100644
--- a/gnu/classpath/ServiceProviderLoadingAction.java
+++ b/gnu/classpath/ServiceProviderLoadingAction.java
@@ -1,5 +1,5 @@
/* ServiceProviderLoadingAction.java -- Action for loading plug-in services.
- Copyright (C) 2004 Free Software Foundation
+ Copyright (C) 2004, 2013 Free Software Foundation
This file is part of GNU Classpath.
@@ -133,11 +133,10 @@ final class ServiceProviderLoadingAction<P>
public P run()
throws Exception
{
- Class<P> loadedClass;
- P serviceProvider;
-
- loadedClass = (Class<P>) loader.loadClass(providerName);
- serviceProvider = loadedClass.newInstance();
+ // This is safe as we check the class is of the correct type
+ @SuppressWarnings("unchecked")
+ Class<P> loadedClass = (Class<P>) loader.loadClass(providerName);
+ P serviceProvider = loadedClass.newInstance();
// Ensure that the loaded provider is actually implementing
// the service provider interface.