You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2015/10/16 14:33:48 UTC

[5/8] wicket git commit: WICKET-6004 Wicket 8 cleanup - IChangeListener with argument

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 <sv...@apache.org>
Authored: Tue Oct 13 11:41:38 2015 +0200
Committer: Sven Meier <sv...@apache.org>
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);