You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by tr...@apache.org on 2005/02/05 17:28:00 UTC
svn commit: r151508 - in incubator/directory/network/trunk/mina/src:
java/org/apache/mina/io/ java/org/apache/mina/io/datagram/
java/org/apache/mina/io/socket/ java/org/apache/mina/protocol/
java/org/apache/mina/protocol/io/ java/org/apache/mina/protocol/vmpipe/
java/org/apache/mina/util/ test/org/apache/mina/util/
Author: trustin
Date: Sat Feb 5 08:27:56 2005
New Revision: 151508
URL: http://svn.apache.org/viewcvs?view=rev&rev=151508
Log:
Fixed: DIRMINA-1 Acceptors and Connectors doesn't provide filter iterator and clearAllFilters().
Modified:
incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoAcceptor.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoConnector.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramAcceptor.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramConnector.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketAcceptor.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketConnector.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolAcceptor.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolConnector.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoAdapter.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolAcceptor.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolConnector.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeAcceptor.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeConnector.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/IoHandlerFilterManager.java
incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/ProtocolHandlerFilterManager.java
incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/IoHandlerFilterManagerTest.java
incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/ProtocolHandlerFilterManagerTest.java
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoAcceptor.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoAcceptor.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoAcceptor.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoAcceptor.java Sat Feb 5 08:27:56 2005
@@ -20,6 +20,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
/**
* Accepts incoming connection, communicates with clients, and fires events to
@@ -74,6 +75,18 @@
*/
void removeFilter( IoHandlerFilter filter );
+ /**
+ * Removes all filters added to this acceptor.
+ */
+ void removeAllFilters();
+
+ /**
+ * Returns the list of all filters ordered by priority (higher first).
+ * The returned list is clone of internal filter chain, and thus you
+ * cannot add or remove filters using it.
+ */
+ List getAllFilters();
+
/**
* Returns the current exception monitor.
*/
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoConnector.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoConnector.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoConnector.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/IoConnector.java Sat Feb 5 08:27:56 2005
@@ -20,6 +20,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
/**
* Connects to endpoint, communicates with the server, and fires events to
@@ -80,6 +81,18 @@
* Removes the specified filter from the filter list.
*/
void removeFilter( IoHandlerFilter filter );
+
+ /**
+ * Removes all filters added to this connector.
+ */
+ void removeAllFilters();
+
+ /**
+ * Returns the list of all filters ordered by priority (higher first).
+ * The returned list is clone of internal filter chain, and thus you
+ * cannot add or remove filters using it.
+ */
+ List getAllFilters();
/**
* Returns the current exception monitor.
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramAcceptor.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramAcceptor.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramAcceptor.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramAcceptor.java Sat Feb 5 08:27:56 2005
@@ -27,6 +27,7 @@
import java.nio.channels.Selector;
import java.util.HashMap;
import java.util.Iterator;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -411,6 +412,16 @@
public void removeFilter( IoHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
}
private static class RegistrationRequest
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramConnector.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramConnector.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramConnector.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/datagram/DatagramConnector.java Sat Feb 5 08:27:56 2005
@@ -26,6 +26,7 @@
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.util.Iterator;
+import java.util.List;
import java.util.Set;
import org.apache.mina.common.ByteBuffer;
@@ -422,6 +423,16 @@
public void removeFilter( IoHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
}
private static class RegistrationRequest
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketAcceptor.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketAcceptor.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketAcceptor.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketAcceptor.java Sat Feb 5 08:27:56 2005
@@ -28,6 +28,7 @@
import java.nio.channels.SocketChannel;
import java.util.HashMap;
import java.util.Iterator;
+import java.util.List;
import java.util.Map;
import org.apache.mina.io.IoAcceptor;
@@ -283,6 +284,16 @@
public void removeFilter( IoHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
}
private static class RegistrationRequest
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketConnector.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketConnector.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketConnector.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/io/socket/SocketConnector.java Sat Feb 5 08:27:56 2005
@@ -26,6 +26,7 @@
import java.nio.channels.Selector;
import java.nio.channels.SocketChannel;
import java.util.Iterator;
+import java.util.List;
import java.util.Set;
import org.apache.mina.io.DefaultExceptionMonitor;
@@ -290,6 +291,16 @@
public void removeFilter( IoHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
}
public ExceptionMonitor getExceptionMonitor()
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolAcceptor.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolAcceptor.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolAcceptor.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolAcceptor.java Sat Feb 5 08:27:56 2005
@@ -20,6 +20,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
/**
* Accepts incoming connection, communicates with clients, and fires events to
@@ -70,4 +71,16 @@
* Removes the specified filter from the filter list.
*/
void removeFilter( ProtocolHandlerFilter filter );
+
+ /**
+ * Removes all filters added to this acceptor.
+ */
+ void removeAllFilters();
+
+ /**
+ * Returns the list of all filters ordered by priority (higher first).
+ * The returned list is clone of internal filter chain, and thus you
+ * cannot add or remove filters using it.
+ */
+ List getAllFilters();
}
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolConnector.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolConnector.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolConnector.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/ProtocolConnector.java Sat Feb 5 08:27:56 2005
@@ -20,6 +20,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
/**
* Connects to endpoint, communicates with the server, and fires events to
@@ -78,4 +79,16 @@
* Removes the specified filter from the filter list.
*/
void removeFilter( ProtocolHandlerFilter filter );
+
+ /**
+ * Removes all filters added to this connector.
+ */
+ void removeAllFilters();
+
+ /**
+ * Returns the list of all filters ordered by priority (higher first).
+ * The returned list is clone of internal filter chain, and thus you
+ * cannot add or remove filters using it.
+ */
+ List getAllFilters();
}
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoAdapter.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoAdapter.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoAdapter.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoAdapter.java Sat Feb 5 08:27:56 2005
@@ -19,6 +19,7 @@
package org.apache.mina.protocol.io;
import java.net.SocketAddress;
+import java.util.List;
import org.apache.mina.common.ByteBuffer;
import org.apache.mina.common.IdleStatus;
@@ -78,6 +79,19 @@
public void removeFilter( ProtocolHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ /**
+ * Removes all filters added to this adapter.
+ */
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
}
/**
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolAcceptor.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolAcceptor.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolAcceptor.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolAcceptor.java Sat Feb 5 08:27:56 2005
@@ -5,6 +5,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
import org.apache.mina.io.IoAcceptor;
import org.apache.mina.protocol.ProtocolAcceptor;
@@ -63,5 +64,15 @@
public void removeFilter( ProtocolHandlerFilter filter )
{
adapter.removeFilter( filter );
+ }
+
+ public void removeAllFilters()
+ {
+ adapter.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return adapter.getAllFilters();
}
}
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolConnector.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolConnector.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolConnector.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/io/IoProtocolConnector.java Sat Feb 5 08:27:56 2005
@@ -5,6 +5,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
import org.apache.mina.io.IoConnector;
import org.apache.mina.io.IoSession;
@@ -73,4 +74,13 @@
adapter.removeFilter( filter );
}
+ public void removeAllFilters()
+ {
+ adapter.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return adapter.getAllFilters();
+ }
}
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeAcceptor.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeAcceptor.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeAcceptor.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeAcceptor.java Sat Feb 5 08:27:56 2005
@@ -6,6 +6,7 @@
import java.io.IOException;
import java.net.SocketAddress;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.apache.mina.protocol.ProtocolAcceptor;
@@ -79,6 +80,16 @@
public void removeFilter( ProtocolHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
+ }
+
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
}
static class Entry
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeConnector.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeConnector.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeConnector.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/protocol/vmpipe/VmPipeConnector.java Sat Feb 5 08:27:56 2005
@@ -5,6 +5,7 @@
import java.io.IOException;
import java.net.SocketAddress;
+import java.util.List;
import org.apache.mina.protocol.ProtocolConnector;
import org.apache.mina.protocol.ProtocolHandlerFilter;
@@ -40,6 +41,16 @@
public void removeFilter( ProtocolHandlerFilter filter )
{
filterManager.removeFilter( filter );
+ }
+
+ public void removeAllFilters()
+ {
+ filterManager.removeAllFilters();
+ }
+
+ public List getAllFilters()
+ {
+ return filterManager.filters();
}
public ProtocolSession connect( SocketAddress address,
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/IoHandlerFilterManager.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/IoHandlerFilterManager.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/IoHandlerFilterManager.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/IoHandlerFilterManager.java Sat Feb 5 08:27:56 2005
@@ -155,6 +155,12 @@
e = e.nextEntry;
}
}
+
+ public synchronized void removeAllFilters() {
+ tail.prevEntry = null;
+ tail.nextEntry = null;
+ head = tail;
+ }
public void fireSessionOpened( IoSession session )
{
@@ -248,7 +254,7 @@
cmd.execute( buf, marker );
}
- List filters()
+ public List filters()
{
List list = new ArrayList();
Entry e = head;
@@ -262,7 +268,7 @@
return list;
}
- List filtersReversed()
+ public List filtersReversed()
{
List list = new ArrayList();
Entry e = tail;
Modified: incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/ProtocolHandlerFilterManager.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/ProtocolHandlerFilterManager.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/ProtocolHandlerFilterManager.java (original)
+++ incubator/directory/network/trunk/mina/src/java/org/apache/mina/util/ProtocolHandlerFilterManager.java Sat Feb 5 08:27:56 2005
@@ -151,6 +151,12 @@
}
}
+ public synchronized void removeAllFilters() {
+ tail.prevEntry = null;
+ tail.nextEntry = null;
+ head = tail;
+ }
+
public void fireSessionOpened( ProtocolSession session )
{
Entry head = this.head;
@@ -242,7 +248,7 @@
cmd.execute( message );
}
- List filters()
+ public List filters()
{
List list = new ArrayList();
Entry e = head;
@@ -256,7 +262,7 @@
return list;
}
- List filtersReversed()
+ public List filtersReversed()
{
List list = new ArrayList();
Entry e = tail;
Modified: incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/IoHandlerFilterManagerTest.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/IoHandlerFilterManagerTest.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/IoHandlerFilterManagerTest.java (original)
+++ incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/IoHandlerFilterManagerTest.java Sat Feb 5 08:27:56 2005
@@ -121,6 +121,12 @@
assertSame( filterD, list.get( 2 ) );
assertSame( filterB, list.get( 1 ) );
}
+
+ public void removeAll()
+ {
+ manager.removeAllFilters();
+ assertEquals( 1, manager.filters().size() );
+ }
public static void main( String[] args )
{
Modified: incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/ProtocolHandlerFilterManagerTest.java
URL: http://svn.apache.org/viewcvs/incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/ProtocolHandlerFilterManagerTest.java?view=diff&r1=151507&r2=151508
==============================================================================
--- incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/ProtocolHandlerFilterManagerTest.java (original)
+++ incubator/directory/network/trunk/mina/src/test/org/apache/mina/util/ProtocolHandlerFilterManagerTest.java Sat Feb 5 08:27:56 2005
@@ -122,6 +122,12 @@
assertSame( filterB, list.get( 1 ) );
}
+ public void removeAll()
+ {
+ manager.removeAllFilters();
+ assertEquals( 1, manager.filters().size() );
+ }
+
public static void main( String[] args )
{
junit.textui.TestRunner.run( ProtocolHandlerFilterManagerTest.class );