You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by ad...@apache.org on 2011/08/26 02:23:13 UTC
svn commit: r1161946 - in /mina/sandbox/adc/ahc/mina3/src:
main/java/org/apache/ahc/mina3/ main/java/org/apache/mina/core/
main/java/org/apache/mina/core/state/ main/java/org/apache/mina/link/
main/java/org/apache/mina/nio/ main/java/org/apache/mina/ss...
Author: adc
Date: Fri Aug 26 00:23:12 2011
New Revision: 1161946
URL: http://svn.apache.org/viewvc?rev=1161946&view=rev
Log:
Maybe we don't need the FSM state object
Removed:
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/Context.java
Modified:
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConnection.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/EquipmentStack.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannelState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/Event.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/EventListener.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/StateMachineFilter.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/DownState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Link.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Token.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/UpState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosedChannelState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosingChannelState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/FinishedChannelState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/HandshakeChannelState.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SSLEngine.java
mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SslListener.java
mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilter.java
mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilterTest.java
mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/EchoFilterTest.java
mina/sandbox/adc/ahc/mina3/src/test/java/org/apache/ahc/mina3/EquipmentStackTest.java
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConnection.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConnection.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConnection.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConnection.java Fri Aug 26 00:23:12 2011
@@ -22,8 +22,8 @@ import java.net.InetSocketAddress;
import java.net.URL;
import org.apache.mina.core.IoConnector;
-import org.apache.mina.core.api.IoFuture;
import org.apache.mina.core.IoSession;
+import org.apache.mina.core.api.IoFuture;
import org.apache.ahc.api.HttpClient;
import org.apache.ahc.api.HttpClientFuture;
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/EquipmentStack.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/EquipmentStack.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/EquipmentStack.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/EquipmentStack.java Fri Aug 26 00:23:12 2011
@@ -18,10 +18,6 @@
*/
package org.apache.mina.core;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
/**
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannelState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannelState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannelState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannelState.java Fri Aug 26 00:23:12 2011
@@ -18,7 +18,6 @@
*/
package org.apache.mina.core;
-import org.apache.mina.core.state.Context;
import org.apache.mina.core.state.Event;
@@ -31,7 +30,7 @@ public interface IoChannelState<U, D, S
void destroy();
- void send(Context<S> context, D message) throws Exception;
+ S send(D message) throws Exception;
- void receive(Context<S> context, U message) throws Exception;
+ S receive(U message) throws Exception;
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java Fri Aug 26 00:23:12 2011
@@ -18,11 +18,6 @@
*/
package org.apache.mina.core;
-import org.apache.mina.core.api.IoDown;
-import org.apache.mina.core.api.IoListener;
-import org.apache.mina.core.api.IoUp;
-
-
/**
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/Event.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/Event.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/Event.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/Event.java Fri Aug 26 00:23:12 2011
@@ -18,10 +18,6 @@
*/
package org.apache.mina.core.state;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
/**
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/EventListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/EventListener.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/EventListener.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/EventListener.java Fri Aug 26 00:23:12 2011
@@ -18,10 +18,6 @@
*/
package org.apache.mina.core.state;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
/**
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/StateMachineFilter.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/StateMachineFilter.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/StateMachineFilter.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/state/StateMachineFilter.java Fri Aug 26 00:23:12 2011
@@ -97,7 +97,7 @@ public abstract class StateMachineFilter
IoChannelState<U, D, S, E> channelState = states.get(state);
equipmentStack.inject(channelState);
- channelState.send(new StateMachineContext(), message);
+ state = channelState.send(message);
equipmentStack.collect(channelState);
}
@@ -108,7 +108,7 @@ public abstract class StateMachineFilter
IoChannelState<U, D, S, E> channelState = states.get(state);
equipmentStack.inject(channelState);
- channelState.receive(new StateMachineContext(), message);
+ state = channelState.receive(message);
equipmentStack.collect(channelState);
}
@@ -119,7 +119,7 @@ public abstract class StateMachineFilter
IoChannelState<U, D, S, E> channelState = states.get(state);
equipmentStack.inject(channelState);
- fireEvent(channelState, new StateMachineContext(), event);
+ fireEvent(channelState, event);
equipmentStack.collect(channelState);
}
@@ -129,10 +129,9 @@ public abstract class StateMachineFilter
events.offer(event);
}
- private void fireEvent(IoChannelState<U, D, S, E> state, StateMachineContext context, E event) throws HandlerException
+ private void fireEvent(IoChannelState<U, D, S, E> channelState, E event) throws HandlerException
{
assert state != null;
- assert context != null;
assert event != null;
for (Method method : state.getClass().getMethods())
@@ -146,7 +145,7 @@ public abstract class StateMachineFilter
{
try
{
- method.invoke(state, context, event);
+ state = (S)method.invoke(state, event);
return;
}
catch (IllegalAccessException iae)
@@ -163,17 +162,4 @@ public abstract class StateMachineFilter
}
throw new HandlerMissingException();
}
-
- private class StateMachineContext implements Context<S>
- {
- public S getState()
- {
- return StateMachineFilter.this.getState();
- }
-
- public void setState(S state)
- {
- StateMachineFilter.this.setState(state);
- }
- }
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/DownState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/DownState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/DownState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/DownState.java Fri Aug 26 00:23:12 2011
@@ -27,7 +27,6 @@ import org.apache.mina.core.BaseChannelS
import org.apache.mina.core.api.IoDown;
import org.apache.mina.core.api.IoProperty;
import org.apache.mina.core.api.IoPropertyScope;
-import org.apache.mina.core.state.Context;
/**
@@ -42,14 +41,14 @@ public class DownState extends BaseChann
@Override
- public void send(Context<State> stateContext, Token message) throws Exception
+ public State send(Token message) throws Exception
{
LOG.error("Should not have been sent a token");
throw new UnsupportedOperationException("Link state channel does not support message sending");
}
@Override
- public void receive(Context<State> stateContext, Token message) throws Exception
+ public State receive(Token message) throws Exception
{
LOG.debug("Received token, tokens={}", numTokens);
@@ -57,19 +56,23 @@ public class DownState extends BaseChann
{
for (LinkListener listener : listeners) listener.up();
- stateContext.setState(State.UP);
child.send(new Token());
+
+ return State.UP;
}
else if (numTokens == 1)
{
for (LinkListener listener : listeners) listener.up();
- stateContext.setState(State.UP);
child.send(new Token());
+
+ return State.UP;
}
else if (numTokens == 0)
{
numTokens++;
}
+
+ return State.DOWN;
}
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Link.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Link.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Link.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Link.java Fri Aug 26 00:23:12 2011
@@ -49,7 +49,7 @@ public class Link extends StateMachineFi
public Link()
{
register(State.UP, new UpState());
- register(State.UP, new DownState());
+ register(State.DOWN, new DownState());
}
public IoDown<Token> getChild()
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Token.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Token.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Token.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/Token.java Fri Aug 26 00:23:12 2011
@@ -18,10 +18,6 @@
*/
package org.apache.mina.link;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
/**
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/UpState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/UpState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/UpState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/link/UpState.java Fri Aug 26 00:23:12 2011
@@ -28,7 +28,6 @@ import org.apache.mina.core.api.IoDown;
import org.apache.mina.core.api.IoEvent;
import org.apache.mina.core.api.IoProperty;
import org.apache.mina.core.api.IoPropertyScope;
-import org.apache.mina.core.state.Context;
/**
@@ -42,14 +41,14 @@ public class UpState extends BaseChannel
@IoProperty protected IoDown<Token> child;
@Override
- public void send(Context<State> stateContext, Token message) throws Exception
+ public State send(Token message) throws Exception
{
LOG.error("Should not have been sent a token");
throw new UnsupportedOperationException("Link state channel does not support message sending");
}
@Override
- public void receive(Context<State> stateContext, Token message) throws Exception
+ public State receive(Token message) throws Exception
{
LOG.debug("Received token, tokens={}", numTokens);
@@ -57,17 +56,20 @@ public class UpState extends BaseChannel
{
for (LinkListener listener : listeners) listener.down();
- stateContext.setState(State.DOWN);
child.send(new Token());
+
+ return State.DOWN;
}
else if (numTokens == 1)
{
numTokens++;
}
+
+ return State.UP;
}
@IoEvent(name = "timeout", type = TimeoutEvent.class)
- public void handle(Context<State> stateContext, TimeoutEvent event) throws Exception
+ public State handle(TimeoutEvent event) throws Exception
{
LOG.debug("Received timeout event, tokens={}", numTokens);
@@ -76,16 +78,20 @@ public class UpState extends BaseChannel
for (LinkListener listener : listeners) listener.down();
numTokens--;
- stateContext.setState(State.DOWN);
child.send(new Token());
+
+ return State.DOWN;
}
else if (numTokens == 1)
{
for (LinkListener listener : listeners) listener.down();
numTokens--;
- stateContext.setState(State.DOWN);
child.send(new Token());
+
+ return State.DOWN;
}
+
+ return State.UP;
}
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java Fri Aug 26 00:23:12 2011
@@ -23,9 +23,9 @@ import java.net.SocketAddress;
import org.apache.mina.core.IoConfig;
import org.apache.mina.core.IoConnector;
+import org.apache.mina.core.IoSession;
import org.apache.mina.core.api.IoFuture;
import org.apache.mina.core.api.IoListener;
-import org.apache.mina.core.IoSession;
/**
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosedChannelState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosedChannelState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosedChannelState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosedChannelState.java Fri Aug 26 00:23:12 2011
@@ -19,7 +19,6 @@
package org.apache.mina.ssl;
import org.apache.mina.core.IoChannelState;
-import org.apache.mina.core.state.Context;
import org.apache.mina.nio.IoByteBuffer;
@@ -39,14 +38,16 @@ public class ClosedChannelState implemen
}
@Override
- public void send(Context<SslStates> sslStatesPContext, IoByteBuffer message) throws Exception
+ public SslStates send(IoByteBuffer message) throws Exception
{
//Todo change body of implemented methods use File | Settings | File Templates.
+ return null;
}
@Override
- public void receive(Context<SslStates> sslStatesContext, IoByteBuffer message) throws Exception
+ public SslStates receive(IoByteBuffer message) throws Exception
{
//Todo change body of implemented methods use File | Settings | File Templates.
+ return null;
}
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosingChannelState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosingChannelState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosingChannelState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/ClosingChannelState.java Fri Aug 26 00:23:12 2011
@@ -19,7 +19,6 @@
package org.apache.mina.ssl;
import org.apache.mina.core.IoChannelState;
-import org.apache.mina.core.state.Context;
import org.apache.mina.nio.IoByteBuffer;
@@ -39,14 +38,16 @@ public class ClosingChannelState impleme
}
@Override
- public void send(Context<SslStates> sslStatesPContext, IoByteBuffer message) throws Exception
+ public SslStates send(IoByteBuffer message) throws Exception
{
//Todo change body of implemented methods use File | Settings | File Templates.
+ return null;
}
@Override
- public void receive(Context<SslStates> sslStatesPContext, IoByteBuffer message) throws Exception
+ public SslStates receive(IoByteBuffer message) throws Exception
{
//Todo change body of implemented methods use File | Settings | File Templates.
+ return null;
}
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/FinishedChannelState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/FinishedChannelState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/FinishedChannelState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/FinishedChannelState.java Fri Aug 26 00:23:12 2011
@@ -27,7 +27,6 @@ import org.slf4j.LoggerFactory;
import org.apache.mina.core.BaseChannelState;
import org.apache.mina.core.api.IoProperty;
import org.apache.mina.core.api.IoPropertyScope;
-import org.apache.mina.core.state.Context;
import org.apache.mina.nio.IoByteBuffer;
@@ -53,14 +52,16 @@ public class FinishedChannelState extend
}
@Override
- public void send(Context<SslStates> context, IoByteBuffer message) throws Exception
+ public SslStates send(IoByteBuffer message) throws Exception
{
//Todo change body of implemented methods use File | Settings | File Templates.
+ return null;
}
@Override
- public void receive(Context<SslStates> context, IoByteBuffer message) throws Exception
+ public SslStates receive(IoByteBuffer message) throws Exception
{
//Todo change body of implemented methods use File | Settings | File Templates.
+ return null;
}
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/HandshakeChannelState.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/HandshakeChannelState.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/HandshakeChannelState.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/HandshakeChannelState.java Fri Aug 26 00:23:12 2011
@@ -31,7 +31,6 @@ import org.apache.mina.core.api.IoEvent;
import org.apache.mina.core.api.IoProperty;
import org.apache.mina.core.api.IoPropertyScope;
import org.apache.mina.core.api.IoUp;
-import org.apache.mina.core.state.Context;
import org.apache.mina.nio.IoByteBuffer;
@@ -49,7 +48,7 @@ public class HandshakeChannelState exten
@IoProperty private IoUp<IoByteBuffer> parent;
@Override
- public void send(Context<SslStates> context, IoByteBuffer message) throws Exception
+ public SslStates send(IoByteBuffer message) throws Exception
{
IoByteBuffer ioByteBuffer = (IoByteBuffer)message;
@@ -81,10 +80,12 @@ public class HandshakeChannelState exten
child.send(byteBuffer);
message.recycle();
+
+ return SslStates.HANDSHAKE;
}
@Override
- public void receive(Context<SslStates> context, IoByteBuffer message) throws Exception
+ public SslStates receive(IoByteBuffer message) throws Exception
{
IoByteBuffer byteBuffer = factory.allocate(engine.getSession().getPacketBufferSize()).get();
@@ -94,43 +95,51 @@ public class HandshakeChannelState exten
handshakeStarted = false;
}
- SSLEngineResult result = engine.unwrap(message, byteBuffer);
- if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.NEED_TASK)
+ try
{
- Runnable runnable;
- while ((runnable = engine.getDelegatedTask()) != null)
+ SSLEngineResult result = engine.unwrap(message, byteBuffer);
+ if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.NEED_TASK)
{
- LOGGER.trace("delegated task started");
- runnable.run();
- LOGGER.trace("delegated task completed");
- }
+ Runnable runnable;
+ while ((runnable = engine.getDelegatedTask()) != null)
+ {
+ LOGGER.trace("delegated task started");
+ runnable.run();
+ LOGGER.trace("delegated task completed");
+ }
+
+ SSLEngineResult.HandshakeStatus status = engine.getHandshakeStatus();
+ if (status == SSLEngineResult.HandshakeStatus.NEED_TASK)
+ {
+ throw new Exception("handshake shouldn't need additional tasks");
+ }
- SSLEngineResult.HandshakeStatus status = engine.getHandshakeStatus();
- if (status == SSLEngineResult.HandshakeStatus.NEED_TASK)
+ LOGGER.trace("handshake status: " + status);
+
+ parent.receive(byteBuffer);
+ }
+ else if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.NEED_WRAP)
{
- throw new Exception("handshake shouldn't need additional tasks");
+ child.send(IoByteBuffer.EMPTY);
}
+ else if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.FINISHED)
+ {
+ for (SslListener listener : listeners) listener.handshakeCompleted();
- LOGGER.trace("handshake status: " + status);
+ return SslStates.FINISHED;
+ }
}
- else if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.NEED_WRAP)
+ finally
{
- child.send(IoByteBuffer.EMPTY);
+ message.recycle();
}
- else if (result.getHandshakeStatus() == SSLEngineResult.HandshakeStatus.FINISHED)
- {
- context.setState(SslStates.FINISHED);
- for (SslListener listener : listeners) listener.handshakeCompleted();
- }
-
- parent.receive(byteBuffer);
- message.recycle();
+ return SslStates.HANDSHAKE;
}
@IoEvent(name = "initiateHandshake", type = InitiateHandshakeEvent.class)
- public void handle(Context<SslStates> context, InitiateHandshakeEvent event) throws Exception
+ public SslStates handle(InitiateHandshakeEvent event) throws Exception
{
- send(context, IoByteBuffer.EMPTY);
+ return send(IoByteBuffer.EMPTY);
}
}
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SSLEngine.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SSLEngine.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SSLEngine.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SSLEngine.java Fri Aug 26 00:23:12 2011
@@ -471,8 +471,8 @@ public class SSLEngine
* Returns a new SSLParameters based on this SSLSocket's current
* cipher suites, protocols, and client authentication settings.
*
- * @since 1.6
* @return new SSLParameters
+ * @since 1.6
*/
public SSLParameters getSSLParameters()
{
Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SslListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SslListener.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SslListener.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/ssl/SslListener.java Fri Aug 26 00:23:12 2011
@@ -18,10 +18,6 @@
*/
package org.apache.mina.ssl;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
/**
* @author <a href="http://mina.apache.org">Apache MINA Project</a>
*/
Modified: mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilter.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilter.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilter.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilter.java Fri Aug 26 00:23:12 2011
@@ -70,6 +70,7 @@ public class CountFilter implements IoFi
/**
* Delay between calls to count listeners in milliseconds.
+ *
* @return the delay between calls to count listeners in milliseconds
*/
public int getDelay()
@@ -79,6 +80,7 @@ public class CountFilter implements IoFi
/**
* Set delay between calls to count listeners in milliseconds.
+ *
* @param delay the delay between calls to count listeners in milliseconds
*/
public void setDelay(int delay)
Modified: mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilterTest.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilterTest.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilterTest.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/CountFilterTest.java Fri Aug 26 00:23:12 2011
@@ -18,7 +18,6 @@
*/
package com.acme.chain;
-import javax.annotation.processing.Filer;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
@@ -41,8 +40,6 @@ import org.junit.Test;
import static org.mockito.Mockito.mock;
import org.apache.mina.core.api.IoDown;
-import org.apache.mina.core.api.IoProperty;
-import org.apache.mina.core.api.IoPropertyScope;
import org.apache.mina.core.api.IoUp;
@@ -54,7 +51,7 @@ public class CountFilterTest
protected static volatile int COUNT;
protected static volatile int MAX;
protected final static Set<CountListener> LISTENERS = new HashSet<CountListener>();
- protected static final CountDownLatch LATCH = new CountDownLatch(1);
+ protected static final CountDownLatch LATCH = new CountDownLatch(1);
@Test
public void test() throws Exception
Modified: mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/EchoFilterTest.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/EchoFilterTest.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/EchoFilterTest.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/test/java/com/acme/chain/EchoFilterTest.java Fri Aug 26 00:23:12 2011
@@ -21,14 +21,10 @@ package com.acme.chain;
import static org.apache.ahc.test.Utils.inject;
import org.junit.Test;
import org.mockito.InOrder;
-import org.mockito.Matchers;
import static org.mockito.Mockito.inOrder;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.verify;
import org.apache.mina.core.api.IoDown;
-import org.apache.mina.core.api.IoUp;
/**
Modified: mina/sandbox/adc/ahc/mina3/src/test/java/org/apache/ahc/mina3/EquipmentStackTest.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/test/java/org/apache/ahc/mina3/EquipmentStackTest.java?rev=1161946&r1=1161945&r2=1161946&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/test/java/org/apache/ahc/mina3/EquipmentStackTest.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/test/java/org/apache/ahc/mina3/EquipmentStackTest.java Fri Aug 26 00:23:12 2011
@@ -30,7 +30,6 @@ import org.junit.Test;
import org.apache.ahc.api.HttpConfig;
import org.apache.ahc.api.HttpListener;
-import org.apache.ahc.mina3.EquipmentStack;
/**