* gcj/javaprims.h: Updated class declaration list.
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added new file.
* java/util/EventListenerProxy.java: New file.
* java/util/EventListener.java: Re-merge with Classpath.
* java/util/EventObject.java: Re-merge with Classpath.
From-SVN: r54720
+2002-06-17 Tom Tromey <tromey@redhat.com>
+
+ * gcj/javaprims.h: Updated class declaration list.
+ * Makefile.in: Rebuilt.
+ * Makefile.am (core_java_source_files): Added new file.
+ * java/util/EventListenerProxy.java: New file.
+ * java/util/EventListener.java: Re-merge with Classpath.
+ * java/util/EventObject.java: Re-merge with Classpath.
+
2002-06-17 Nathanael Nerode <neroden@twcny.rr.com>
* java/lang/ClassNotFoundException.java: New Classpath version.
java/util/EmptyStackException.java \
java/util/Enumeration.java \
java/util/EventListener.java \
+java/util/EventListenerProxy.java \
java/util/EventObject.java \
java/util/GregorianCalendar.java \
java/util/HashMap.java \
java/util/EmptyStackException.java \
java/util/Enumeration.java \
java/util/EventListener.java \
+java/util/EventListenerProxy.java \
java/util/EventObject.java \
java/util/GregorianCalendar.java \
java/util/HashMap.java \
.deps/java/lang/ArithmeticException.P \
.deps/java/lang/ArrayIndexOutOfBoundsException.P \
.deps/java/lang/ArrayStoreException.P .deps/java/lang/AssertionError.P \
-.deps/java/lang/Boolean.P \
-.deps/java/lang/Byte.P .deps/java/lang/CharSequence.P \
-.deps/java/lang/Character.P .deps/java/lang/Class.P \
-.deps/java/lang/ClassCastException.P \
+.deps/java/lang/Boolean.P .deps/java/lang/Byte.P \
+.deps/java/lang/CharSequence.P .deps/java/lang/Character.P \
+.deps/java/lang/Class.P .deps/java/lang/ClassCastException.P \
.deps/java/lang/ClassCircularityError.P \
.deps/java/lang/ClassFormatError.P .deps/java/lang/ClassLoader.P \
.deps/java/lang/ClassNotFoundException.P \
.deps/java/util/ConcurrentModificationException.P \
.deps/java/util/Date.P .deps/java/util/Dictionary.P \
.deps/java/util/EmptyStackException.P .deps/java/util/Enumeration.P \
-.deps/java/util/EventListener.P .deps/java/util/EventObject.P \
-.deps/java/util/GregorianCalendar.P .deps/java/util/HashMap.P \
-.deps/java/util/HashSet.P .deps/java/util/Hashtable.P \
-.deps/java/util/IdentityHashMap.P .deps/java/util/Iterator.P \
-.deps/java/util/LinkedHashMap.P .deps/java/util/LinkedHashSet.P \
-.deps/java/util/LinkedList.P .deps/java/util/List.P \
-.deps/java/util/ListIterator.P .deps/java/util/ListResourceBundle.P \
-.deps/java/util/Locale.P .deps/java/util/Map.P \
-.deps/java/util/MissingResourceException.P \
+.deps/java/util/EventListener.P .deps/java/util/EventListenerProxy.P \
+.deps/java/util/EventObject.P .deps/java/util/GregorianCalendar.P \
+.deps/java/util/HashMap.P .deps/java/util/HashSet.P \
+.deps/java/util/Hashtable.P .deps/java/util/IdentityHashMap.P \
+.deps/java/util/Iterator.P .deps/java/util/LinkedHashMap.P \
+.deps/java/util/LinkedHashSet.P .deps/java/util/LinkedList.P \
+.deps/java/util/List.P .deps/java/util/ListIterator.P \
+.deps/java/util/ListResourceBundle.P .deps/java/util/Locale.P \
+.deps/java/util/Map.P .deps/java/util/MissingResourceException.P \
.deps/java/util/NoSuchElementException.P .deps/java/util/Observable.P \
.deps/java/util/Observer.P .deps/java/util/Properties.P \
.deps/java/util/PropertyPermission.P \
-# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am
+# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-TAR = tar
+TAR = gtar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
class EmptyStackException;
class Enumeration;
class EventListener;
+ class EventListenerProxy;
class EventObject;
class GregorianCalendar;
class HashMap;
-# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am
+# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-TAR = tar
+TAR = gtar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
-/* An interface that all event listener interfaces must extend
- Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc.
+/* EventListener.java -- tagging interface for all event listeners
+ Copyright (C) 1998, 1999, 2001, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
package java.util;
-/* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3
- * "The Java Language Specification", ISBN 0-201-63451-1
- * Status: Believed complete and correct.
- */
-
/**
* Empty interface that is implemented by classes that need to receive
* events. Subinterfaces define methods that can be called to fire an
* take as argument an subclass of <code>EventObject</code>.
*
* @author Tom Tromey <tromey@cygnus.com>
- * @date December 12, 1998
+ * @see EventObject
+ * @status updated to 1.4
*/
public interface EventListener
{
--- /dev/null
+/* EventListenerProxy.java -- abstract wrapper for event listeners
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package java.util;
+
+/**
+ * An abstract wrapper for event listeners. This allows subclasses to
+ * attach additional parameters to an existing event listener to create
+ * a new one. Subclasses are expected to add methods to set and retrieve
+ * any attached properties.
+ *
+ * @author Eric Blake <ebb9@email.byu.edu>
+ * @since 1.4
+ * @status updated to 1.4
+ */
+public abstract class EventListenerProxy implements EventListener
+{
+ /** The listener that this proxy wraps. */
+ private final EventListener listener;
+
+ /**
+ * Construct a proxy event listener, given an existing one to augment.
+ *
+ * @param listener the listener to wrap
+ */
+ public EventListenerProxy(EventListener listener)
+ {
+ this.listener = listener;
+ }
+
+ /**
+ * Return the wrapped event listener.
+ *
+ * @return the listener associated with this proxy
+ */
+ public EventListener getListener()
+ {
+ return listener;
+ }
+} // class EventListenerProxy
-/* EventObject.java - Represent events fired by objects.
- Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* EventObject.java -- represents an event on an object
+ Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
/**
* Represents Events fired by Objects.
*
+ * @author Eric Blake <ebb9@email.byu.edu>
* @see EventListener
+ * @since 1.1
+ * @status updated to 1.4
*/
public class EventObject implements Serializable
{
+ /**
+ * Compatible with JDK 1.1+.
+ */
private static final long serialVersionUID = 5516075349620653480L;
+
+ /**
+ * The source object; in other words, the object which this event takes
+ * place on.
+ */
protected transient Object source;
/**
* Constructs an EventObject with the specified source.
+ *
+ * @param source the source of the event
+ * @throws IllegalArgumentException if source is null (This is not
+ * specified, but matches the behavior of the JDK)
*/
public EventObject(Object source)
{
+ // This check for null is stupid, if you ask me, since source is
+ // protected and non-final, so a subclass can set it to null later on.
+ if (source == null)
+ throw new IllegalArgumentException();
this.source = source;
}
/**
- * @return The source of the Event.
+ * Returns the source of the event.
+ *
+ * @return the event source
*/
public Object getSource()
{
}
/**
- * @return String representation of the Event.
- * @override toString in class Object
+ * Converts the event to a String. The format is not specified, but by
+ * observation, the JDK uses:
+ * <code>getClass().getName() + "[source=" + source + "]";</code>.
+ *
+ * @return String representation of the Event
*/
public String toString()
{
- return this.getClass() + "[source=" + source.toString() + "]";
+ return getClass().getName() + "[source=" + source + "]";
}
-}
+} // class EventObject
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-TAR = tar
+TAR = gtar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
- cp -pr $$/$$file $(distdir)/$$file; \
+ cp -pr $$d/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \