You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by jv...@apache.org on 2012/05/24 16:55:27 UTC
svn commit: r1342287 - in /mina/trunk:
core/src/main/java/org/apache/mina/api/
core/src/main/java/org/apache/mina/filter/codec/
core/src/test/java/org/apache/mina/session/
examples/src/main/java/org/apache/mina/examples/http/
examples/src/main/java/org...
Author: jvermillard
Date: Thu May 24 14:55:26 2012
New Revision: 1342287
URL: http://svn.apache.org/viewvc?rev=1342287&view=rev
Log:
DefaultIoFilter =>AbstractIoFilter
Added:
mina/trunk/core/src/main/java/org/apache/mina/api/AbstractIoFilter.java (contents, props changed)
- copied, changed from r1341901, mina/trunk/core/src/main/java/org/apache/mina/api/DefaultIoFilter.java
mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/
mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/NioUdpEchoServer.java (with props)
Removed:
mina/trunk/core/src/main/java/org/apache/mina/api/DefaultIoFilter.java
Modified:
mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java
mina/trunk/core/src/test/java/org/apache/mina/session/AbstractIoSessionTest.java
mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpTest.java
mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpsTest.java
mina/trunk/examples/src/main/java/org/apache/mina/examples/ldap/LdapTest.java
Copied: mina/trunk/core/src/main/java/org/apache/mina/api/AbstractIoFilter.java (from r1341901, mina/trunk/core/src/main/java/org/apache/mina/api/DefaultIoFilter.java)
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/api/AbstractIoFilter.java?p2=mina/trunk/core/src/main/java/org/apache/mina/api/AbstractIoFilter.java&p1=mina/trunk/core/src/main/java/org/apache/mina/api/DefaultIoFilter.java&r1=1341901&r2=1342287&rev=1342287&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/api/DefaultIoFilter.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/api/AbstractIoFilter.java Thu May 24 14:55:26 2012
@@ -26,7 +26,7 @@ import org.apache.mina.filterchain.Write
*
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
-public abstract class DefaultIoFilter implements IoFilter {
+public abstract class AbstractIoFilter implements IoFilter {
@Override
public void sessionCreated(IoSession session) {
Propchange: mina/trunk/core/src/main/java/org/apache/mina/api/AbstractIoFilter.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java?rev=1342287&r1=1342286&r2=1342287&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java Thu May 24 14:55:26 2012
@@ -21,7 +21,7 @@ package org.apache.mina.filter.codec;
import java.nio.ByteBuffer;
-import org.apache.mina.api.DefaultIoFilter;
+import org.apache.mina.api.AbstractIoFilter;
import org.apache.mina.api.IoFilter;
import org.apache.mina.api.IoSession;
import org.apache.mina.filterchain.ReadFilterChainController;
@@ -37,7 +37,7 @@ import org.slf4j.LoggerFactory;
*
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
-public class ProtocolCodecFilter extends DefaultIoFilter {
+public class ProtocolCodecFilter extends AbstractIoFilter {
/** A logger for this class */
private static final Logger LOGGER = LoggerFactory.getLogger(ProtocolCodecFilter.class);
Modified: mina/trunk/core/src/test/java/org/apache/mina/session/AbstractIoSessionTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/session/AbstractIoSessionTest.java?rev=1342287&r1=1342286&r2=1342287&view=diff
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/session/AbstractIoSessionTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/session/AbstractIoSessionTest.java Thu May 24 14:55:26 2012
@@ -27,7 +27,7 @@ import java.nio.ByteBuffer;
import junit.framework.Assert;
-import org.apache.mina.api.DefaultIoFilter;
+import org.apache.mina.api.AbstractIoFilter;
import org.apache.mina.api.IoFilter;
import org.apache.mina.api.IoFuture;
import org.apache.mina.api.IoService;
@@ -231,7 +231,7 @@ public class AbstractIoSessionTest {
assertEquals(1024, session.getWrittenBytes());
}
- private class PassthruFilter extends DefaultIoFilter {
+ private class PassthruFilter extends AbstractIoFilter {
}
}
Modified: mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpTest.java?rev=1342287&r1=1342286&r2=1342287&view=diff
==============================================================================
--- mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpTest.java (original)
+++ mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpTest.java Thu May 24 14:55:26 2012
@@ -26,7 +26,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.apache.mina.api.DefaultIoFilter;
+import org.apache.mina.api.AbstractIoFilter;
import org.apache.mina.api.IoSession;
import org.apache.mina.filter.logging.LoggingFilter;
import org.apache.mina.filterchain.ReadFilterChainController;
@@ -66,7 +66,7 @@ public class HttpTest {
}
- private static class DummyHttpSever extends DefaultIoFilter {
+ private static class DummyHttpSever extends AbstractIoFilter {
private HttpRequest incomingRequest;
Modified: mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpsTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpsTest.java?rev=1342287&r1=1342286&r2=1342287&view=diff
==============================================================================
--- mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpsTest.java (original)
+++ mina/trunk/examples/src/main/java/org/apache/mina/examples/http/HttpsTest.java Thu May 24 14:55:26 2012
@@ -26,7 +26,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.apache.mina.api.DefaultIoFilter;
+import org.apache.mina.api.AbstractIoFilter;
import org.apache.mina.api.IoSession;
import org.apache.mina.filter.logging.LoggingFilter;
import org.apache.mina.filterchain.ReadFilterChainController;
@@ -69,7 +69,7 @@ public class HttpsTest {
}
- private static class DummyHttpSever extends DefaultIoFilter {
+ private static class DummyHttpSever extends AbstractIoFilter {
private HttpRequest incomingRequest;
Modified: mina/trunk/examples/src/main/java/org/apache/mina/examples/ldap/LdapTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/examples/src/main/java/org/apache/mina/examples/ldap/LdapTest.java?rev=1342287&r1=1342286&r2=1342287&view=diff
==============================================================================
--- mina/trunk/examples/src/main/java/org/apache/mina/examples/ldap/LdapTest.java (original)
+++ mina/trunk/examples/src/main/java/org/apache/mina/examples/ldap/LdapTest.java Thu May 24 14:55:26 2012
@@ -34,7 +34,7 @@ import org.apache.directory.shared.ldap.
import org.apache.directory.shared.ldap.model.message.ResultCodeEnum;
import org.apache.directory.shared.ldap.model.message.SearchRequest;
import org.apache.directory.shared.ldap.model.message.UnbindRequest;
-import org.apache.mina.api.DefaultIoFilter;
+import org.apache.mina.api.AbstractIoFilter;
import org.apache.mina.api.IoSession;
import org.apache.mina.filter.logging.LoggingFilter;
import org.apache.mina.filterchain.ReadFilterChainController;
@@ -66,7 +66,7 @@ public class LdapTest {
}
- private class DummyLdapServer extends DefaultIoFilter {
+ private class DummyLdapServer extends AbstractIoFilter {
@Override
public void messageReceived(IoSession session, Object message, ReadFilterChainController controller) {
if (message instanceof AbandonRequest) {
Added: mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/NioUdpEchoServer.java
URL: http://svn.apache.org/viewvc/mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/NioUdpEchoServer.java?rev=1342287&view=auto
==============================================================================
--- mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/NioUdpEchoServer.java (added)
+++ mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/NioUdpEchoServer.java Thu May 24 14:55:26 2012
@@ -0,0 +1,139 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.mina.examples.udpecho;
+
+import java.io.IOException;
+import java.net.InetSocketAddress;
+import java.net.SocketAddress;
+import java.nio.ByteBuffer;
+
+import org.apache.mina.api.IdleStatus;
+import org.apache.mina.api.IoFilter;
+import org.apache.mina.api.IoService;
+import org.apache.mina.api.IoServiceListener;
+import org.apache.mina.api.IoSession;
+import org.apache.mina.filter.logging.LoggingFilter;
+import org.apache.mina.filterchain.ReadFilterChainController;
+import org.apache.mina.filterchain.WriteFilterChainController;
+import org.apache.mina.service.OneThreadSelectorStrategy;
+import org.apache.mina.transport.tcp.NioSelectorProcessor;
+import org.apache.mina.transport.udp.nio.NioUdpServer;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * A UDP base echo server sending back every datagram received
+ *
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+public class NioUdpEchoServer {
+
+ static final Logger LOG = LoggerFactory.getLogger(NioUdpEchoServer.class);
+
+ public static void main(String[] args) {
+ LOG.info("starting echo server");
+
+ OneThreadSelectorStrategy<NioSelectorProcessor> strategy = new OneThreadSelectorStrategy<NioSelectorProcessor>(new NioSelectorProcessor());
+
+ NioUdpServer server = new NioUdpServer(strategy);
+
+ // create the fitler chain for this service
+ server.setFilters(new LoggingFilter("LoggingFilter1"), new IoFilter() {
+
+ @Override
+ public void sessionOpened(IoSession session) {
+ LOG.info("session {} open", session);
+ }
+
+ @Override
+ public void sessionIdle(IoSession session, IdleStatus status) {
+ LOG.info("session {} idle", session);
+ }
+
+ @Override
+ public void sessionCreated(IoSession session) {
+ LOG.info("session {} created", session);
+ }
+
+ @Override
+ public void sessionClosed(IoSession session) {
+ LOG.info("session {} open", session);
+ }
+
+ @Override
+ public void messageWriting(IoSession session, Object message, WriteFilterChainController controller) {
+ // we just push the message in the chain
+ controller.callWriteNextFilter(message);
+ }
+
+ @Override
+ public void messageReceived(IoSession session, Object message, ReadFilterChainController controller) {
+
+ if (message instanceof ByteBuffer) {
+ LOG.info("echoing");
+ session.write(message);
+ }
+ }
+ });
+
+ server.addListeners(new IoServiceListener() {
+
+ @Override
+ public void sessionDestroyed(IoSession session) {
+ LOG.info("session destroyed {}", session);
+
+ }
+
+ @Override
+ public void sessionCreated(IoSession session) {
+ LOG.info("session created {}", session);
+
+ String welcomeStr = "welcome\n";
+ ByteBuffer bf = ByteBuffer.allocate(welcomeStr.length());
+ bf.put(welcomeStr.getBytes());
+ bf.flip();
+ session.write(bf);
+ }
+
+ @Override
+ public void serviceInactivated(IoService service) {
+ LOG.info("service deactivated {}", service);
+ }
+
+ @Override
+ public void serviceActivated(IoService service) {
+ LOG.info("service activated {}", service);
+ }
+ });
+
+ try {
+ SocketAddress address = new InetSocketAddress(9999);
+ server.bind(address);
+ LOG.debug("Running the server for 25 sec");
+ Thread.sleep(25000);
+ LOG.debug("Unbinding the UDP port");
+ server.unbind();
+ } catch (IOException e) {
+ LOG.error("I/O exception", e);
+ } catch (InterruptedException e) {
+ LOG.error("Interrupted exception", e);
+ }
+ }
+}
Propchange: mina/trunk/examples/src/main/java/org/apache/mina/examples/udpecho/NioUdpEchoServer.java
------------------------------------------------------------------------------
svn:mime-type = text/plain