diff --git a/src/java/com/threerings/presents/dobj/AttributeChangeListener.java b/src/java/com/threerings/presents/dobj/AttributeChangeListener.java index c4cb3be09..101c551e1 100644 --- a/src/java/com/threerings/presents/dobj/AttributeChangeListener.java +++ b/src/java/com/threerings/presents/dobj/AttributeChangeListener.java @@ -1,5 +1,5 @@ // -// $Id: AttributeChangeListener.java,v 1.1 2001/10/12 00:03:03 mdb Exp $ +// $Id: AttributeChangeListener.java,v 1.2 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -9,7 +9,7 @@ package com.threerings.presents.dobj; * * @see DObject#addListener */ -public interface AttributeChangeListener +public interface AttributeChangeListener extends ChangeListener { /** * Called when an attribute changed event has been dispatched on an diff --git a/src/java/com/threerings/presents/dobj/ChangeListener.java b/src/java/com/threerings/presents/dobj/ChangeListener.java new file mode 100644 index 000000000..5fc648b2b --- /dev/null +++ b/src/java/com/threerings/presents/dobj/ChangeListener.java @@ -0,0 +1,16 @@ +// +// $Id: ChangeListener.java,v 1.1 2002/02/03 04:38:05 mdb Exp $ + +package com.threerings.presents.dobj; + +/** + * The various listener interfaces (e.g. {@link EventListener}, {@link + * AttributeChangeListener}, etc.) all extend this base interface so that + * the distributed object can check to make sure when an object is adding + * itself as a listener of some sort that it actually implements at least + * one of the listener interfaces. Thus, all listener interfaces must + * extend this one. + */ +public interface ChangeListener +{ +} diff --git a/src/java/com/threerings/presents/dobj/DObject.java b/src/java/com/threerings/presents/dobj/DObject.java index 7cde55636..45a1fb43e 100644 --- a/src/java/com/threerings/presents/dobj/DObject.java +++ b/src/java/com/threerings/presents/dobj/DObject.java @@ -1,5 +1,5 @@ // -// $Id: DObject.java,v 1.32 2002/02/02 09:42:36 mdb Exp $ +// $Id: DObject.java,v 1.33 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -157,7 +157,7 @@ public class DObject * @see SetListener * @see OidListListener */ - public void addListener (Object listener) + public void addListener (ChangeListener listener) { // only add the listener if they're not already there Object[] els = ListUtil.testAndAdd(_listeners, listener); @@ -172,7 +172,7 @@ public class DObject * * @param listener the listener to be removed. */ - public void removeListener (Object listener) + public void removeListener (ChangeListener listener) { ListUtil.clear(_listeners, listener); } diff --git a/src/java/com/threerings/presents/dobj/EventListener.java b/src/java/com/threerings/presents/dobj/EventListener.java index 82339d801..cb7c71a65 100644 --- a/src/java/com/threerings/presents/dobj/EventListener.java +++ b/src/java/com/threerings/presents/dobj/EventListener.java @@ -1,5 +1,5 @@ // -// $Id: EventListener.java,v 1.1 2001/10/12 00:03:03 mdb Exp $ +// $Id: EventListener.java,v 1.2 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -9,7 +9,7 @@ package com.threerings.presents.dobj; * * @see DObject#addListener */ -public interface EventListener +public interface EventListener extends ChangeListener { /** * Called when any event has been dispatched on an object. The event diff --git a/src/java/com/threerings/presents/dobj/MessageListener.java b/src/java/com/threerings/presents/dobj/MessageListener.java index 2a610e28b..ad3070650 100644 --- a/src/java/com/threerings/presents/dobj/MessageListener.java +++ b/src/java/com/threerings/presents/dobj/MessageListener.java @@ -1,5 +1,5 @@ // -// $Id: MessageListener.java,v 1.1 2001/10/12 00:03:03 mdb Exp $ +// $Id: MessageListener.java,v 1.2 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -9,7 +9,7 @@ package com.threerings.presents.dobj; * * @see DObject#addListener */ -public interface MessageListener +public interface MessageListener extends ChangeListener { /** * Called when an message event has been dispatched on an object. diff --git a/src/java/com/threerings/presents/dobj/ObjectDeathListener.java b/src/java/com/threerings/presents/dobj/ObjectDeathListener.java index d285d70ff..c94016d06 100644 --- a/src/java/com/threerings/presents/dobj/ObjectDeathListener.java +++ b/src/java/com/threerings/presents/dobj/ObjectDeathListener.java @@ -1,5 +1,5 @@ // -// $Id: ObjectDeathListener.java,v 1.1 2001/10/23 23:56:12 mdb Exp $ +// $Id: ObjectDeathListener.java,v 1.2 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -9,7 +9,7 @@ package com.threerings.presents.dobj; * * @see DObject#addListener */ -public interface ObjectDeathListener +public interface ObjectDeathListener extends ChangeListener { /** * Called when this object has been destroyed. This will be called diff --git a/src/java/com/threerings/presents/dobj/OidListListener.java b/src/java/com/threerings/presents/dobj/OidListListener.java index de5394f85..716d785fe 100644 --- a/src/java/com/threerings/presents/dobj/OidListListener.java +++ b/src/java/com/threerings/presents/dobj/OidListListener.java @@ -1,5 +1,5 @@ // -// $Id: OidListListener.java,v 1.1 2001/10/12 00:03:03 mdb Exp $ +// $Id: OidListListener.java,v 1.2 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -9,7 +9,7 @@ package com.threerings.presents.dobj; * * @see DObject#addListener */ -public interface OidListListener +public interface OidListListener extends ChangeListener { /** * Called when an object added event has been dispatched on an diff --git a/src/java/com/threerings/presents/dobj/SetListener.java b/src/java/com/threerings/presents/dobj/SetListener.java index 48800ad7f..348225a07 100644 --- a/src/java/com/threerings/presents/dobj/SetListener.java +++ b/src/java/com/threerings/presents/dobj/SetListener.java @@ -1,5 +1,5 @@ // -// $Id: SetListener.java,v 1.1 2001/10/12 00:03:03 mdb Exp $ +// $Id: SetListener.java,v 1.2 2002/02/03 04:38:05 mdb Exp $ package com.threerings.presents.dobj; @@ -9,7 +9,7 @@ package com.threerings.presents.dobj; * * @see DObject#addListener */ -public interface SetListener +public interface SetListener extends ChangeListener { /** * Called when an element added event has been dispatched on an