WICKET-6004 Wicket 8 cleanup - IChangeListener with argument

Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/61ca86c0
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/61ca86c0
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/61ca86c0

Branch: refs/heads/master
Commit: 61ca86c0b5fdcb7da40a19d42b09f281fb32d729
Parents: 0b5fce3
Author: Sven Meier <[email protected]>
Authored: Tue Oct 13 11:41:38 2015 +0200
Committer: Sven Meier <[email protected]>
Committed: Fri Oct 16 14:24:47 2015 +0200

----------------------------------------------------------------------
 .../application/ReloadingClassLoader.java       | 11 +++----
 .../org/apache/wicket/markup/MarkupCache.java   |  4 +--
 .../protocol/http/ReloadingWicketFilter.java    |  4 +--
 .../wicket/resource/PropertiesFactory.java      |  5 ++--
 .../wicket/util/listener/ChangeListenerSet.java | 31 ++++----------------
 .../wicket/util/listener/IChangeListener.java   |  6 ++--
 .../wicket/util/watch/IModificationWatcher.java |  2 +-
 .../wicket/util/watch/ModificationWatcher.java  |  4 +--
 8 files changed, 25 insertions(+), 42 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-core/src/main/java/org/apache/wicket/application/ReloadingClassLoader.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/application/ReloadingClassLoader.java
 
b/wicket-core/src/main/java/org/apache/wicket/application/ReloadingClassLoader.java
index 83c413b..df3ef09 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/application/ReloadingClassLoader.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/application/ReloadingClassLoader.java
@@ -30,6 +30,7 @@ import 
org.apache.wicket.util.collections.UrlExternalFormComparator;
 import org.apache.wicket.util.file.File;
 import org.apache.wicket.util.listener.IChangeListener;
 import org.apache.wicket.util.time.Duration;
+import org.apache.wicket.util.watch.IModifiable;
 import org.apache.wicket.util.watch.IModificationWatcher;
 import org.apache.wicket.util.watch.ModificationWatcher;
 import org.slf4j.Logger;
@@ -50,7 +51,7 @@ public class ReloadingClassLoader extends URLClassLoader
 
        private static final List<String> patterns = new ArrayList<>();
 
-       private IChangeListener listener;
+       private IChangeListener<Class<?>> listener;
 
        private final IModificationWatcher watcher;
 
@@ -301,7 +302,7 @@ public class ReloadingClassLoader extends URLClassLoader
         * @param listener
         *            the listener to notify upon class change
         */
-       public void setListener(IChangeListener listener)
+       public void setListener(IChangeListener<Class<?>> listener)
        {
                this.listener = listener;
        }
@@ -331,15 +332,15 @@ public class ReloadingClassLoader extends URLClassLoader
                        if (clzFile.exists())
                        {
                                log.info("Watching changes of class " + 
clzFile);
-                               watcher.add(clzFile, new IChangeListener()
+                               watcher.add(clzFile, new 
IChangeListener<IModifiable>()
                                {
                                        @Override
-                                       public void onChange()
+                                       public void onChange(IModifiable 
modifiable)
                                        {
                                                log.info("Class file " + 
finalClzFile + " has changed, reloading");
                                                try
                                                {
-                                                       listener.onChange();
+                                                       listener.onChange(clz);
                                                }
                                                catch (Exception e)
                                                {

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-core/src/main/java/org/apache/wicket/markup/MarkupCache.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/markup/MarkupCache.java 
b/wicket-core/src/main/java/org/apache/wicket/markup/MarkupCache.java
index 3526dc6..d73ba86 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/MarkupCache.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/MarkupCache.java
@@ -517,10 +517,10 @@ public class MarkupCache implements IMarkupCache
                                .getResourceWatcher(true);
                        if (watcher != null)
                        {
-                               watcher.add(markupResourceStream, new 
IChangeListener()
+                               watcher.add(markupResourceStream, new 
IChangeListener<IModifiable>()
                                {
                                        @Override
-                                       public void onChange()
+                                       public void onChange(IModifiable 
modifiable)
                                        {
                                                if (log.isDebugEnabled())
                                                {

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-core/src/main/java/org/apache/wicket/protocol/http/ReloadingWicketFilter.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/protocol/http/ReloadingWicketFilter.java
 
b/wicket-core/src/main/java/org/apache/wicket/protocol/http/ReloadingWicketFilter.java
index 6c7cc00..8b5dc39 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/protocol/http/ReloadingWicketFilter.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/protocol/http/ReloadingWicketFilter.java
@@ -147,10 +147,10 @@ public class ReloadingWicketFilter extends WicketFilter
        public void init(final boolean isServlet, final FilterConfig 
filterConfig)
                throws ServletException
        {
-               reloadingClassLoader.setListener(new IChangeListener()
+               reloadingClassLoader.setListener(new IChangeListener<Class<?>>()
                {
                        @Override
-                       public void onChange()
+                       public void onChange(Class<?> clz)
                        {
                                destroy();
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-core/src/main/java/org/apache/wicket/resource/PropertiesFactory.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/resource/PropertiesFactory.java 
b/wicket-core/src/main/java/org/apache/wicket/resource/PropertiesFactory.java
index 9294205..4a5fd95 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/resource/PropertiesFactory.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/resource/PropertiesFactory.java
@@ -31,6 +31,7 @@ import org.apache.wicket.util.listener.IChangeListener;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
 import org.apache.wicket.util.value.ValueMap;
+import org.apache.wicket.util.watch.IModifiable;
 import org.apache.wicket.util.watch.IModificationWatcher;
 import org.apache.wicket.util.watch.ModificationWatcher;
 import org.slf4j.Logger;
@@ -256,10 +257,10 @@ public class PropertiesFactory implements 
IPropertiesFactory
        protected void addToWatcher(final String path, final IResourceStream 
resourceStream,
                final IModificationWatcher watcher)
        {
-               watcher.add(resourceStream, new IChangeListener()
+               watcher.add(resourceStream, new IChangeListener<IModifiable>()
                {
                        @Override
-                       public void onChange()
+                       public void onChange(IModifiable modifiable)
                        {
                                log.info("A properties files has changed. 
Removing all entries " +
                                        "from the cache. Resource: " + 
resourceStream);

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-util/src/main/java/org/apache/wicket/util/listener/ChangeListenerSet.java
----------------------------------------------------------------------
diff --git 
a/wicket-util/src/main/java/org/apache/wicket/util/listener/ChangeListenerSet.java
 
b/wicket-util/src/main/java/org/apache/wicket/util/listener/ChangeListenerSet.java
index add35e6..c67c7fe 100644
--- 
a/wicket-util/src/main/java/org/apache/wicket/util/listener/ChangeListenerSet.java
+++ 
b/wicket-util/src/main/java/org/apache/wicket/util/listener/ChangeListenerSet.java
@@ -16,8 +16,6 @@
  */
 package org.apache.wicket.util.listener;
 
-import org.apache.wicket.util.watch.IModifiable;
-
 /**
  * Holds a set of IChangeListeners.
  * 
@@ -26,37 +24,18 @@ import org.apache.wicket.util.watch.IModifiable;
  * 
  * @author Jonathan Locke
  */
-public final class ChangeListenerSet extends 
ListenerCollection<IChangeListener>
+public final class ChangeListenerSet<T> extends 
ListenerCollection<IChangeListener<T>>
 {
        private static final long serialVersionUID = 1L;
 
-       public void notifyListeners()
-       {
-               notify(new INotifier<IChangeListener>()
-               {
-                       @Override
-                       public void notify(final IChangeListener object)
-                       {
-                               object.onChange();
-                       }
-               });
-       }
-
-       public void notifyListeners(final IModifiable modifiable)
+       public void notifyListeners(final T t)
        {
-               notify(new INotifier<IChangeListener>()
+               notify(new INotifier<IChangeListener<T>>()
                {
                        @Override
-                       public void notify(final IChangeListener listener)
+                       public void notify(final IChangeListener<T> listener)
                        {
-                               if (listener instanceof IChangeListener2)
-                               {
-                                       ((IChangeListener2) 
listener).onChange(modifiable);
-                               }
-                               else
-                               {
-                                       listener.onChange();
-                               }
+                               listener.onChange(t);
                        }
                });
        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-util/src/main/java/org/apache/wicket/util/listener/IChangeListener.java
----------------------------------------------------------------------
diff --git 
a/wicket-util/src/main/java/org/apache/wicket/util/listener/IChangeListener.java
 
b/wicket-util/src/main/java/org/apache/wicket/util/listener/IChangeListener.java
index 43ff0db..5288b69 100644
--- 
a/wicket-util/src/main/java/org/apache/wicket/util/listener/IChangeListener.java
+++ 
b/wicket-util/src/main/java/org/apache/wicket/util/listener/IChangeListener.java
@@ -21,10 +21,12 @@ package org.apache.wicket.util.listener;
  * 
  * @author Jonathan Locke
  */
-public interface IChangeListener
+public interface IChangeListener<T>
 {
        /**
         * Client method that is called to indicate that something changed.
+        *
+        * @param modifiable The object that has changed
         */
-       void onChange();
+       void onChange(T modifiable);
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-util/src/main/java/org/apache/wicket/util/watch/IModificationWatcher.java
----------------------------------------------------------------------
diff --git 
a/wicket-util/src/main/java/org/apache/wicket/util/watch/IModificationWatcher.java
 
b/wicket-util/src/main/java/org/apache/wicket/util/watch/IModificationWatcher.java
index 606378e..8afe221 100644
--- 
a/wicket-util/src/main/java/org/apache/wicket/util/watch/IModificationWatcher.java
+++ 
b/wicket-util/src/main/java/org/apache/wicket/util/watch/IModificationWatcher.java
@@ -41,7 +41,7 @@ public interface IModificationWatcher
         *            modified
         * @return <code>true</code> if the set did not already contain the 
specified element
         */
-       boolean add(final IModifiable modifiable, final IChangeListener 
listener);
+       boolean add(final IModifiable modifiable, final 
IChangeListener<IModifiable> listener);
 
        /**
         * Removes all entries associated with an <code>IModifiable</code> 
object.

http://git-wip-us.apache.org/repos/asf/wicket/blob/61ca86c0/wicket-util/src/main/java/org/apache/wicket/util/watch/ModificationWatcher.java
----------------------------------------------------------------------
diff --git 
a/wicket-util/src/main/java/org/apache/wicket/util/watch/ModificationWatcher.java
 
b/wicket-util/src/main/java/org/apache/wicket/util/watch/ModificationWatcher.java
index 4f260fa..c37317a 100644
--- 
a/wicket-util/src/main/java/org/apache/wicket/util/watch/ModificationWatcher.java
+++ 
b/wicket-util/src/main/java/org/apache/wicket/util/watch/ModificationWatcher.java
@@ -57,7 +57,7 @@ public class ModificationWatcher implements 
IModificationWatcher
                public Time lastModifiedTime;
 
                // The set of listeners to call when the modifiable changes
-               public final ChangeListenerSet listeners = new 
ChangeListenerSet();
+               public final ChangeListenerSet<IModifiable> listeners = new 
ChangeListenerSet<>();
 
                // The modifiable thing
                public IModifiable modifiable;
@@ -82,7 +82,7 @@ public class ModificationWatcher implements 
IModificationWatcher
        }
 
        @Override
-       public final boolean add(final IModifiable modifiable, final 
IChangeListener listener)
+       public final boolean add(final IModifiable modifiable, final 
IChangeListener<IModifiable> listener)
        {
                // Look up entry for modifiable
                final Entry entry = modifiableToEntry.get(modifiable);

Reply via email to