From 8fd096c8219114361d17f3c7aa26bb2cd5591910 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Euzenat?= <Jerome.Euzenat@inria.fr> Date: Sun, 7 Mar 2010 18:20:52 +0000 Subject: [PATCH] - added annotations on unchecked lint warnings --- .../exmo/align/impl/BasicParameters.java | 21 ++++++++++++++----- .../inrialpes/exmo/align/impl/Extensions.java | 3 ++- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/fr/inrialpes/exmo/align/impl/BasicParameters.java b/src/fr/inrialpes/exmo/align/impl/BasicParameters.java index 49a9adfd..84d82275 100644 --- a/src/fr/inrialpes/exmo/align/impl/BasicParameters.java +++ b/src/fr/inrialpes/exmo/align/impl/BasicParameters.java @@ -47,6 +47,13 @@ import org.semanticweb.owl.align.Parameters; * Standard parameter list structure to be used everywhere. * By default and for means of communication, parameter names and values * are Strings (even if their type is Object). + * + * [JE:2010] A note about unchecked warnings + * java.util.Properties is declared as hashtable<Object,Object> + * However all its accessors can only put String as key in the hashtable + * But propertyNames returns Enumeration and not Enumeration<String> + * Using keySet will not change anything, because it will be Set<Object> + * Java 6 introduces Set<String> stringPropertyNames() !! * * @author Jérôme Euzenat * @version $Id$ @@ -60,9 +67,10 @@ public class BasicParameters extends Properties implements Parameters, Cloneable //Hashtable<String,Object> parameters = null; public BasicParameters() {} - + + @SuppressWarnings( "unchecked" ) public BasicParameters( Properties prop ) { - for ( Enumeration<String> e = (Enumeration<String>)prop.propertyNames(); e.hasMoreElements(); ) { + for ( Enumeration<String> e = (Enumeration<String>)prop.propertyNames(); e.hasMoreElements(); ) { //[W:unchecked] String k = e.nextElement(); setProperty( k, prop.getProperty(k) ); } @@ -84,19 +92,21 @@ public class BasicParameters extends Properties implements Parameters, Cloneable return getProperty( name ); } + @SuppressWarnings( "unchecked" ) public Enumeration<String> getNames(){ //return parameters.keys(); - return (Enumeration<String>)propertyNames(); + return (Enumeration<String>)propertyNames(); //[W:unchecked] } public Collection getValues(){ return values(); } + @SuppressWarnings( "unchecked" ) public void write(){ System.out.println("<?xml version='1.0' ?>"); System.out.println("<Parameters>"); - for ( Enumeration<String> e = (Enumeration<String>)propertyNames(); e.hasMoreElements(); ) { + for ( Enumeration<String> e = (Enumeration<String>)propertyNames(); e.hasMoreElements(); ) { //[W:unchecked] String k = e.nextElement(); System.out.println(" <param name='"+k+"'>"+getProperty(k)+"</param>"); } @@ -106,9 +116,10 @@ public class BasicParameters extends Properties implements Parameters, Cloneable /** * displays the current parameters (debugging) */ + @SuppressWarnings( "unchecked" ) public void displayParameters( PrintStream stream ){ stream.println("Parameters:"); - for ( Enumeration<String> e = (Enumeration<String>)propertyNames(); e.hasMoreElements();) { + for ( Enumeration<String> e = (Enumeration<String>)propertyNames(); e.hasMoreElements();) { //[W:unchecked] String k = e.nextElement(); stream.println(" "+k+" = "+getProperty(k)); } diff --git a/src/fr/inrialpes/exmo/align/impl/Extensions.java b/src/fr/inrialpes/exmo/align/impl/Extensions.java index 02e83ab7..aad1e69b 100644 --- a/src/fr/inrialpes/exmo/align/impl/Extensions.java +++ b/src/fr/inrialpes/exmo/align/impl/Extensions.java @@ -72,7 +72,8 @@ public class Extensions { return table.values(); } + @SuppressWarnings( "unchecked" ) public Object clone() { - return new Extensions( (Hashtable<String,String[]>)table.clone() ); + return new Extensions( (Hashtable<String,String[]>)table.clone() ); //[W:unchecked] } } -- GitLab