Author: ivaynberg
Date: Wed Mar 16 15:24:22 2011
New Revision: 1082165
URL: http://svn.apache.org/viewvc?rev=1082165&view=rev
Log:
allow Behavior to implement IEventSink directly instead of performing an
instanceof check - makes it clearer which objects in the framework can be sinks.
Issue: WICKET-3516
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ComponentEventSender.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/behavior/Behavior.java
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ComponentEventSender.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ComponentEventSender.java?rev=1082165&r1=1082164&r2=1082165&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ComponentEventSender.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ComponentEventSender.java
Wed Mar 16 15:24:22 2011
@@ -283,15 +283,12 @@ final class ComponentEventSender impleme
List<? extends Behavior> behaviors =
object.getBehaviors();
for (Behavior behavior : behaviors)
{
- if (behavior instanceof IEventSink)
+ IEventSink behaviorSink = behavior;
+ dispatcher.dispatchEvent(behaviorSink, e);
+ if (e.isStop())
{
- IEventSink behaviorSink =
(IEventSink)behavior;
- dispatcher.dispatchEvent(behaviorSink,
e);
- if (e.isStop())
- {
- visit.stop();
- break;
- }
+ visit.stop();
+ break;
}
}
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/behavior/Behavior.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/behavior/Behavior.java?rev=1082165&r1=1082164&r2=1082165&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/behavior/Behavior.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/behavior/Behavior.java
Wed Mar 16 15:24:22 2011
@@ -18,6 +18,8 @@ package org.apache.wicket.behavior;
import org.apache.wicket.Component;
import org.apache.wicket.IClusterable;
+import org.apache.wicket.event.IEvent;
+import org.apache.wicket.event.IEventSink;
import org.apache.wicket.markup.ComponentTag;
import org.apache.wicket.markup.html.IHeaderResponse;
@@ -41,7 +43,7 @@ import org.apache.wicket.markup.html.IHe
* @author Eelco Hillenius
* @author Igor Vaynberg (ivaynberg)
*/
-public abstract class Behavior implements IClusterable
+public abstract class Behavior implements IClusterable, IEventSink
{
private static final long serialVersionUID = 1L;
@@ -205,4 +207,8 @@ public abstract class Behavior implement
{
}
+ public void onEvent(IEvent<?> event)
+ {
+ }
+
}
\ No newline at end of file