You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2007/09/29 21:45:28 UTC

svn commit: r580629 - in /mina/trunk/core/src: main/java/org/apache/mina/common/ main/java/org/apache/mina/filter/logging/ main/java/org/apache/mina/filter/util/ test/java/org/apache/mina/filter/util/

Author: trustin
Date: Sat Sep 29 12:45:26 2007
New Revision: 580629

URL: http://svn.apache.org/viewvc?rev=580629&view=rev
Log:
* Added IoEvent.fire()
* Overrided IoEvent.fire() at IoFilterEvent to fire the event using its underlying nextFilter
* Improved WrappingFilter to use IoFilterEvent instead of IoEvent

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/common/IoEvent.java
    mina/trunk/core/src/main/java/org/apache/mina/common/IoFilterEvent.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/logging/MdcInjectionFilter.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/util/WrappingFilter.java
    mina/trunk/core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/common/IoEvent.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/IoEvent.java?rev=580629&r1=580628&r2=580629&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/IoEvent.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/IoEvent.java Sat Sep 29 12:45:26 2007
@@ -57,6 +57,10 @@
     public Object getParameter() {
         return parameter;
     }
+    
+    public void fire() {
+        getSession().getFilterChain().fire(getType(), getParameter());
+    }
 
     @Override
     public String toString() {

Modified: mina/trunk/core/src/main/java/org/apache/mina/common/IoFilterEvent.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/IoFilterEvent.java?rev=580629&r1=580628&r2=580629&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/IoFilterEvent.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/IoFilterEvent.java Sat Sep 29 12:45:26 2007
@@ -46,4 +46,9 @@
     public NextFilter getNextFilter() {
         return nextFilter;
     }
+    
+    @Override
+    public void fire() {
+        getNextFilter().filter(this);
+    }
 }

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/logging/MdcInjectionFilter.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/logging/MdcInjectionFilter.java?rev=580629&r1=580628&r2=580629&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/logging/MdcInjectionFilter.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/logging/MdcInjectionFilter.java Sat Sep 29 12:45:26 2007
@@ -4,7 +4,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.mina.common.IoEvent;
+import org.apache.mina.common.IoFilterEvent;
 import org.apache.mina.common.IoSession;
 import org.apache.mina.filter.util.WrappingFilter;
 import org.slf4j.MDC;
@@ -57,7 +57,7 @@
     };
 
     @Override
-    protected void filter(NextFilter nextFilter, IoEvent event) throws Exception {
+    protected void filter(IoFilterEvent event) throws Exception {
         // since this method can potentially call into itself
         // we need to check the call depth before clearing the MDC
         callDepth.set (callDepth.get() + 1);
@@ -68,7 +68,7 @@
         }
         try {
             /* propagate event down the filter chain */
-            nextFilter.filter(event);
+            event.fire();
         } finally {
             callDepth.set ( callDepth.get() - 1);
             if (callDepth.get() == 0) {

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/util/WrappingFilter.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/util/WrappingFilter.java?rev=580629&r1=580628&r2=580629&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/util/WrappingFilter.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/util/WrappingFilter.java Sat Sep 29 12:45:26 2007
@@ -1,9 +1,9 @@
 package org.apache.mina.filter.util;
 
 import org.apache.mina.common.IdleStatus;
-import org.apache.mina.common.IoEvent;
 import org.apache.mina.common.IoEventType;
 import org.apache.mina.common.IoFilterAdapter;
+import org.apache.mina.common.IoFilterEvent;
 import org.apache.mina.common.IoSession;
 import org.apache.mina.common.WriteRequest;
 
@@ -16,50 +16,50 @@
     public WrappingFilter() {
     }
 
-    protected abstract void filter(NextFilter nextFilter, IoEvent event) throws Exception;
+    protected abstract void filter(IoFilterEvent event) throws Exception;
 
     @Override
     public final void sessionCreated(NextFilter nextFilter, IoSession session) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.SESSION_CREATED, session, null));
+        filter(new IoFilterEvent(nextFilter, IoEventType.SESSION_CREATED, session, null));
     }
 
     @Override
     public final void sessionOpened(NextFilter nextFilter, IoSession session) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.SESSION_OPENED, session, null));
+        filter(new IoFilterEvent(nextFilter, IoEventType.SESSION_OPENED, session, null));
     }
 
     @Override
     public final void sessionClosed(NextFilter nextFilter, IoSession session) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.SESSION_CLOSED, session, null));
+        filter(new IoFilterEvent(nextFilter, IoEventType.SESSION_CLOSED, session, null));
     }
 
     @Override
     public final void sessionIdle(NextFilter nextFilter, IoSession session, IdleStatus status) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.SESSION_IDLE, session, status));
+        filter(new IoFilterEvent(nextFilter, IoEventType.SESSION_IDLE, session, status));
     }
 
     @Override
     public final void exceptionCaught(NextFilter nextFilter, IoSession session, Throwable cause) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.EXCEPTION_CAUGHT, session, cause));
+        filter(new IoFilterEvent(nextFilter, IoEventType.EXCEPTION_CAUGHT, session, cause));
     }
 
     @Override
     public final void messageReceived(NextFilter nextFilter, IoSession session, Object message) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.MESSAGE_RECEIVED, session, message));
+        filter(new IoFilterEvent(nextFilter, IoEventType.MESSAGE_RECEIVED, session, message));
     }
 
     @Override
     public final void messageSent(NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.MESSAGE_SENT, session, writeRequest));
+        filter(new IoFilterEvent(nextFilter, IoEventType.MESSAGE_SENT, session, writeRequest));
     }
 
     @Override
     public final void filterWrite(NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.WRITE, session, writeRequest));
+        filter(new IoFilterEvent(nextFilter, IoEventType.WRITE, session, writeRequest));
     }
 
     @Override
     public final void filterClose(NextFilter nextFilter, IoSession session) throws Exception {
-        filter(nextFilter, new IoEvent(IoEventType.CLOSE, session, null));
+        filter(new IoFilterEvent(nextFilter, IoEventType.CLOSE, session, null));
     }
 }

Modified: mina/trunk/core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java?rev=580629&r1=580628&r2=580629&view=diff
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java Sat Sep 29 12:45:26 2007
@@ -8,9 +8,9 @@
 import org.apache.mina.common.DefaultWriteRequest;
 import org.apache.mina.common.DummySession;
 import org.apache.mina.common.IdleStatus;
-import org.apache.mina.common.IoEvent;
 import org.apache.mina.common.IoEventType;
 import org.apache.mina.common.IoFilter;
+import org.apache.mina.common.IoFilterEvent;
 import org.apache.mina.common.IoSession;
 import org.apache.mina.common.WriteRequest;
 import org.easymock.MockControl;
@@ -104,9 +104,9 @@
         private List<IoEventType> eventsAfter = new ArrayList<IoEventType>();
 
         @Override
-        protected void filter(NextFilter nextFilter, IoEvent event) {
+        protected void filter(IoFilterEvent event) {
             eventsBefore.add(event.getType());
-            nextFilter.filter(event);
+            event.fire();
             eventsAfter.add(event.getType());
         }
     }