diff --git a/libjava/ChangeLog b/libjava/ChangeLog index a19a97c57ae5..6e62fff7ce3e 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,23 @@ +2007-02-01 Tom Tromey + + * java/util/logging/LogManager.java (loggers): Genericized. + (addLogger): Merged. + (findAncestor): Likewise. + (getLogger): Likewise. + (getLoggerNames): Genericized. + (reset): Merged. + (getLevelProperty): Likewise. + * java/lang/reflect/Method.java (getDeclaringClass): Genericized. + * java/lang/reflect/Constructor.java (getParameterTypes): + Genericized. + (getExceptionTypes): Likewise. + (newInstance): Likewise. + * java/lang/reflect/Array.java (newInstance): Genericized. + * java/lang/Object.java (getClass): Genericized. + * java/nio/charset/spi/CharsetProvider.java (charsets): + Genericized. + * java/text/Collator.java: Implement Comparable. + 2007-02-01 Tom Tromey * java/util/Calendar.java: Implement Comparable. Update diff --git a/libjava/classpath/lib/java/lang/Object.class b/libjava/classpath/lib/java/lang/Object.class index 40563bf15498..a2755d819b60 100644 Binary files a/libjava/classpath/lib/java/lang/Object.class and b/libjava/classpath/lib/java/lang/Object.class differ diff --git a/libjava/classpath/lib/java/lang/reflect/Array.class b/libjava/classpath/lib/java/lang/reflect/Array.class index 62952c3d14ce..e2ef1a09d60a 100644 Binary files a/libjava/classpath/lib/java/lang/reflect/Array.class and b/libjava/classpath/lib/java/lang/reflect/Array.class differ diff --git a/libjava/classpath/lib/java/lang/reflect/Constructor.class b/libjava/classpath/lib/java/lang/reflect/Constructor.class index a54f69aeec07..637c5b87bd77 100644 Binary files a/libjava/classpath/lib/java/lang/reflect/Constructor.class and b/libjava/classpath/lib/java/lang/reflect/Constructor.class differ diff --git a/libjava/classpath/lib/java/lang/reflect/Method.class b/libjava/classpath/lib/java/lang/reflect/Method.class index 0a0b45cd5144..0eda2ee75902 100644 Binary files a/libjava/classpath/lib/java/lang/reflect/Method.class and b/libjava/classpath/lib/java/lang/reflect/Method.class differ diff --git a/libjava/classpath/lib/java/nio/charset/spi/CharsetProvider.class b/libjava/classpath/lib/java/nio/charset/spi/CharsetProvider.class index cdf4cbb912a0..2b9736833732 100644 Binary files a/libjava/classpath/lib/java/nio/charset/spi/CharsetProvider.class and b/libjava/classpath/lib/java/nio/charset/spi/CharsetProvider.class differ diff --git a/libjava/classpath/lib/java/text/Collator.class b/libjava/classpath/lib/java/text/Collator.class index a997460fbe93..655c4fca8477 100644 Binary files a/libjava/classpath/lib/java/text/Collator.class and b/libjava/classpath/lib/java/text/Collator.class differ diff --git a/libjava/classpath/lib/java/util/logging/LogManager$1.class b/libjava/classpath/lib/java/util/logging/LogManager$1.class index 39d0992a0abf..927c28c7872e 100644 Binary files a/libjava/classpath/lib/java/util/logging/LogManager$1.class and b/libjava/classpath/lib/java/util/logging/LogManager$1.class differ diff --git a/libjava/classpath/lib/java/util/logging/LogManager.class b/libjava/classpath/lib/java/util/logging/LogManager.class index 7f93b8af931f..92da8e3a249b 100644 Binary files a/libjava/classpath/lib/java/util/logging/LogManager.class and b/libjava/classpath/lib/java/util/logging/LogManager.class differ diff --git a/libjava/java/lang/Object.java b/libjava/java/lang/Object.java index e81a48a9fb7f..740a7c78e752 100644 --- a/libjava/java/lang/Object.java +++ b/libjava/java/lang/Object.java @@ -1,5 +1,5 @@ /* java.lang.Object - The universal superclass in Java - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -129,7 +129,7 @@ public class Object * * @return the class of this Object */ - public final native Class getClass(); + public final native Class getClass(); /** * Get a value that represents this Object, as uniquely as diff --git a/libjava/java/lang/reflect/Array.java b/libjava/java/lang/reflect/Array.java index 32bed06ee02b..639cc0e02dbe 100644 --- a/libjava/java/lang/reflect/Array.java +++ b/libjava/java/lang/reflect/Array.java @@ -1,5 +1,5 @@ /* java.lang.reflect.Array - manipulate arrays by reflection - Copyright (C) 1998, 1999, 2001, 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2001, 2003, 2005, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -104,7 +104,7 @@ public final class Array * @throws NegativeArraySizeException when length is less than 0 * @throws OutOfMemoryError if memory allocation fails */ - public static native Object newInstance(Class componentType, int length); + public static native Object newInstance(Class componentType, int length); /** * Creates a new multi-dimensioned array. The new array has the same @@ -130,7 +130,7 @@ public final class Array * than 0 * @throws OutOfMemoryError if memory allocation fails */ - public static native Object newInstance(Class elementType, int[] dimensions); + public static native Object newInstance(Class elementType, int[] dimensions); /** * Gets the array length. diff --git a/libjava/java/lang/reflect/Constructor.java b/libjava/java/lang/reflect/Constructor.java index 83aae3b48ce4..adebc600a67f 100644 --- a/libjava/java/lang/reflect/Constructor.java +++ b/libjava/java/lang/reflect/Constructor.java @@ -1,5 +1,5 @@ /* java.lang.reflect.Constructor - reflection of Java constructors - Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006 + Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -155,11 +155,11 @@ public final class Constructor extends AccessibleObject * * @return a list of the types of the constructor's parameters */ - public Class[] getParameterTypes () + public Class[] getParameterTypes () { if (parameter_types == null) getType (); - return (Class[]) parameter_types.clone(); + return (Class[]) parameter_types.clone(); } /** @@ -169,11 +169,11 @@ public final class Constructor extends AccessibleObject * * @return a list of the types in the constructor's throws clause */ - public Class[] getExceptionTypes () + public Class[] getExceptionTypes () { if (exception_types == null) getType(); - return (Class[]) exception_types.clone(); + return (Class[]) exception_types.clone(); } /** @@ -305,7 +305,7 @@ public final class Constructor extends AccessibleObject * @throws ExceptionInInitializerError if construction triggered class * initialization, which then failed */ - public native Object newInstance (Object[] args) + public native T newInstance (Object... args) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException; diff --git a/libjava/java/lang/reflect/Method.java b/libjava/java/lang/reflect/Method.java index fc0bf1064408..6fa2956e40e8 100644 --- a/libjava/java/lang/reflect/Method.java +++ b/libjava/java/lang/reflect/Method.java @@ -1,6 +1,6 @@ // Method.java - Represent method of class or interface. -/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006 Free Software Foundation +/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2007 Free Software Foundation This file is part of libgcj. @@ -68,7 +68,7 @@ public final class Method * is a non-inherited member. * @return the class that declared this member */ - public Class getDeclaringClass() + public Class getDeclaringClass() { return declaringClass; } diff --git a/libjava/java/nio/charset/spi/CharsetProvider.java b/libjava/java/nio/charset/spi/CharsetProvider.java index e15153fe9e68..d56723c3f433 100644 --- a/libjava/java/nio/charset/spi/CharsetProvider.java +++ b/libjava/java/nio/charset/spi/CharsetProvider.java @@ -1,5 +1,5 @@ /* CharsetProvider.java -- charset service provider interface - Copyright (C) 2002, 2006 Free Software Foundation + Copyright (C) 2002, 2006, 2007 Free Software Foundation This file is part of GNU Classpath. @@ -83,7 +83,7 @@ public abstract class CharsetProvider * @return the iterator * @see Charset#availableCharsets() */ - public abstract Iterator charsets(); + public abstract Iterator charsets(); /** * Returns the named charset, by canonical name or alias. diff --git a/libjava/java/text/Collator.java b/libjava/java/text/Collator.java index c1ba87e93b99..aa643163943f 100644 --- a/libjava/java/text/Collator.java +++ b/libjava/java/text/Collator.java @@ -1,5 +1,5 @@ /* Collator.java -- Perform locale dependent String comparisons. - Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -68,11 +68,7 @@ import java.util.ResourceBundle; * @author Aaron M. Renn (arenn@urbanophile.com) * @date March 18, 1999 */ -/* Written using "Java Class Libraries", 2nd edition, plus online - * API docs for JDK 1.2 from http://www.javasoft.com. - * Status: Mostly complete, but parts stubbed out. Look for FIXME. - */ -public abstract class Collator implements Comparator, Cloneable +public abstract class Collator implements Comparator, Cloneable { /** * This constant is a strength value which indicates that only primary @@ -292,7 +288,7 @@ public abstract class Collator implements Comparator, Cloneable * specified locale. If no Collator exists for the desired * locale, a Collator for the default locale will be returned. * - * @param loc The desired localed to load a Collator for. + * @param loc The desired locale to load a Collator for. * * @return A Collator for the requested locale */ diff --git a/libjava/java/util/logging/LogManager.java b/libjava/java/util/logging/LogManager.java index b8b31c43cb6f..1e0192e3f349 100644 --- a/libjava/java/util/logging/LogManager.java +++ b/libjava/java/util/logging/LogManager.java @@ -1,6 +1,6 @@ /* LogManager.java -- a class for maintaining Loggers and managing configuration properties - Copyright (C) 2002, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2005, 2006, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -129,7 +129,7 @@ public class LogManager * The registered named loggers; maps the name of a Logger to * a WeakReference to it. */ - private Map loggers; + private Map> loggers; /** * The properties for the logging framework which have been @@ -269,7 +269,7 @@ public class LogManager */ name = logger.getName(); - ref = (WeakReference) loggers.get(name); + ref = loggers.get(name); if (ref != null) { if (ref.get() != null) @@ -286,7 +286,7 @@ public class LogManager checkAccess(); Logger parent = findAncestor(logger); - loggers.put(name, new WeakReference(logger)); + loggers.put(name, new WeakReference(logger)); if (parent != logger.getParent()) logger.setParent(parent); @@ -362,15 +362,13 @@ public class LogManager int bestNameLength = 0; Logger cand; - String candName; int candNameLength; if (child == Logger.root) return null; - for (Iterator iter = loggers.keySet().iterator(); iter.hasNext();) + for (String candName : loggers.keySet()) { - candName = (String) iter.next(); candNameLength = candName.length(); if (candNameLength > bestNameLength @@ -378,7 +376,7 @@ public class LogManager && childName.startsWith(candName) && childName.charAt(candNameLength) == '.') { - cand = (Logger) ((WeakReference) loggers.get(candName)).get(); + cand = loggers.get(candName).get(); if ((cand == null) || (cand == child)) continue; @@ -403,14 +401,14 @@ public class LogManager */ public synchronized Logger getLogger(String name) { - WeakReference ref; + WeakReference ref; /* Throw a NullPointerException if name is null. */ name.getClass(); - ref = (WeakReference) loggers.get(name); + ref = loggers.get(name); if (ref != null) - return (Logger) ref.get(); + return ref.get(); else return null; } @@ -423,7 +421,7 @@ public class LogManager * @return an Enumeration with the names of the currently * registered Loggers. */ - public synchronized Enumeration getLoggerNames() + public synchronized Enumeration getLoggerNames() { return Collections.enumeration(loggers.keySet()); } @@ -446,16 +444,16 @@ public class LogManager properties = new Properties(); - Iterator iter = loggers.values().iterator(); + Iterator> iter = loggers.values().iterator(); while (iter.hasNext()) { - WeakReference ref; + WeakReference ref; Logger logger; - ref = (WeakReference) iter.next(); + ref = iter.next(); if (ref != null) { - logger = (Logger) ref.get(); + logger = ref.get(); if (logger == null) iter.remove(); @@ -710,7 +708,11 @@ public class LogManager { try { - return Level.parse(getLogManager().getProperty(propertyName)); + String value = getLogManager().getProperty(propertyName); + if (value != null) + return Level.parse(getLogManager().getProperty(propertyName)); + else + return defaultValue; } catch (Exception ex) {