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 2009/12/18 07:44:11 UTC

svn commit: r892157 - in /mina/sandbox/adc/ahc: mina2/src/main/java/org/apache/ahc/mina2/ mina2/src/main/java/org/apache/ahc/mina2/api/ mina3/src/main/java/org/apache/ahc/mina3/ mina3/src/main/java/org/apache/ahc/mina3/api/ mina3/src/main/java/org/apac...

Author: adc
Date: Fri Dec 18 06:44:00 2009
New Revision: 892157

URL: http://svn.apache.org/viewvc?rev=892157&view=rev
Log:
re-org completed, initial ideas for mina 3

Added:
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpRequest.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpRequest.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannel.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannels.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoConnector.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/IoSession.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/SslChannel.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/
    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/util/
Modified:
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatch.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatchFuture.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClient.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClientFutureException.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConfig.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConnection.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpFactory.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoFuture.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoSessionInitializer.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolCodecFactory.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolDecoder.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ByteArrayBasedMimeContent.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultIoSessionCache.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultSslConfig.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/EquipmentStack.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpProtocolCodecFactory.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpRequestEncoder.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpResponseDecoder.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/InputStreamBasedMimeContent.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ProtocolCodecFilterSessionConfigListener.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslConfig.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslSessionConfigListener.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/IoSessionCache.java
    mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/SessionConfigListener.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatch.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatchFuture.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClient.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClientFutureException.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConfig.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConnection.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpFactory.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoFuture.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoSessionInitializer.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolCodecFactory.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolDecoder.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ByteArrayBasedMimeContent.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultIoSessionCache.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultSslConfig.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/EquipmentStack.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpProtocolCodecFactory.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpRequestEncoder.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpResponseDecoder.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/InputStreamBasedMimeContent.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ProtocolCodecFilterSessionConfigListener.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslConfig.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslSessionConfigListener.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/IoSessionCache.java
    mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/SessionConfigListener.java

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatch.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatch.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatch.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatch.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -60,7 +60,7 @@
 
     public HttpBatch get(String url) throws MalformedURLException
     {
-        HttpRequest request = new HttpRequest();
+        HttpRequest request = new AsyncHttpRequest();
 
         request.setUrl(new URL(url));
         request.setVerb(HttpVerb.GET);

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatchFuture.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatchFuture.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatchFuture.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpBatchFuture.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.util.List;
 import java.util.concurrent.ExecutionException;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClient.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClient.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClient.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClient.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.net.InetAddress;
 import java.net.InetSocketAddress;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClientFutureException.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClientFutureException.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClientFutureException.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpClientFutureException.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.ahc.api.HttpClientFutureImpl;
 import org.apache.ahc.api.HttpResponse;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConfig.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConfig.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConfig.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConfig.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.ahc.api.HttpConfig;
 

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConnection.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConnection.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConnection.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpConnection.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.net.InetSocketAddress;
 import java.net.URL;
@@ -36,8 +36,8 @@
 import org.apache.ahc.api.HttpListener;
 import org.apache.ahc.api.HttpRequest;
 import org.apache.ahc.api.HttpResponse;
-import org.apache.ahc.client.api.IoSessionCache;
-import org.apache.ahc.client.api.SessionConfigListener;
+import org.apache.ahc.mina2.api.IoSessionCache;
+import org.apache.ahc.mina2.api.SessionConfigListener;
 
 
 /**

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpFactory.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpFactory.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpFactory.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpFactory.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.ahc.api.HttpClient;
 import org.apache.ahc.api.HttpConfig;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoFuture.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoFuture.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoFuture.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoFuture.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.util.concurrent.TimeUnit;
 

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoSessionInitializer.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoSessionInitializer.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoSessionInitializer.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpIoSessionInitializer.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.future.IoFuture;
 import org.apache.mina.core.session.IoSession;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolCodecFactory.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolCodecFactory.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolCodecFactory.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolCodecFactory.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolCodecFactory;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolDecoder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolDecoder.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolDecoder.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpProtocolDecoder.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.buffer.IoBuffer;
 import org.apache.mina.core.session.IoSession;

Added: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpRequest.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpRequest.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpRequest.java (added)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/AsyncHttpRequest.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,123 @@
+/**
+ * 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.ahc.mina2;
+
+import java.net.URL;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+
+import org.apache.ahc.HttpHeaders;
+import org.apache.ahc.api.HttpConfig;
+import org.apache.ahc.api.HttpListener;
+import org.apache.ahc.api.HttpRequest;
+import org.apache.ahc.api.HttpVerb;
+import org.apache.ahc.api.MimeContent;
+import org.apache.ahc.api.listeners.MimeContentListener;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public class AsyncHttpRequest extends HttpRequest
+{
+    private EquipmentStack stack;
+
+    public AsyncHttpRequest()
+    {
+    }
+
+    public AsyncHttpRequest(URL url, HttpVerb verb, HttpHeaders headers, List<MimeContent> mimeContent, List<MimeContentListener> listeners, int timeout, TimeUnit timeUnit)
+    {
+        super(url, verb, headers, mimeContent, listeners, timeout, timeUnit);
+    }
+
+    public AsyncHttpRequest(HttpRequest httpRequest)
+    {
+        super(httpRequest);
+    }
+
+    public AsyncHttpRequest(URL url)
+    {
+        super(url);
+    }
+
+    void setStack(EquipmentStack stack)
+    {
+        this.stack = stack;
+    }
+
+    @Override
+    public <T extends HttpConfig> T getConfig(Class<T> clazz)
+    {
+        return stack.getConfig(clazz);
+    }
+
+    @Override
+    public HttpRequest equipWith(HttpConfig config)
+    {
+        stack.equipWith(config);
+
+        return this;
+    }
+
+    @Override
+    public <T extends HttpListener> Set<T> getListeners(Class<T> clazz)
+    {
+        return stack.getListeners(clazz);
+    }
+
+    @Override
+    public HttpRequest equipWith(HttpListener listener)
+    {
+        stack.equipWith(listener);
+
+        return this;
+    }
+
+    @Override
+    public Object getEquip(String key)
+    {
+        return stack.get(key);
+    }
+
+    @Override
+    public HttpRequest equipWith(String key, Object value)
+    {
+        stack.equipWith(key, value);
+
+        return this;
+    }
+
+    @Override
+    public HttpRequest push()
+    {
+        stack.push();
+
+        return this;
+    }
+
+    @Override
+    public HttpRequest pop()
+    {
+        stack.pop();
+
+        return this;
+    }
+}

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ByteArrayBasedMimeContent.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ByteArrayBasedMimeContent.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ByteArrayBasedMimeContent.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ByteArrayBasedMimeContent.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultIoSessionCache.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultIoSessionCache.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultIoSessionCache.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultIoSessionCache.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.net.InetSocketAddress;
 
@@ -24,7 +24,7 @@
 import org.apache.mina.core.service.IoConnector;
 import org.apache.mina.core.session.IoSession;
 
-import org.apache.ahc.client.api.IoSessionCache;
+import org.apache.ahc.mina2.api.IoSessionCache;
 
 
 /**

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultSslConfig.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultSslConfig.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultSslConfig.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/DefaultSslConfig.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import javax.net.ssl.TrustManager;
 import javax.net.ssl.X509TrustManager;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/EquipmentStack.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/EquipmentStack.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/EquipmentStack.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/EquipmentStack.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.util.ArrayList;
 import java.util.EmptyStackException;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpProtocolCodecFactory.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpProtocolCodecFactory.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpProtocolCodecFactory.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpProtocolCodecFactory.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolCodecFactory;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpRequestEncoder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpRequestEncoder.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpRequestEncoder.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpRequestEncoder.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolEncoderAdapter;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpResponseDecoder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpResponseDecoder.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpResponseDecoder.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/HttpResponseDecoder.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.buffer.IoBuffer;
 import org.apache.mina.core.session.IoSession;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/InputStreamBasedMimeContent.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/InputStreamBasedMimeContent.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/InputStreamBasedMimeContent.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/InputStreamBasedMimeContent.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import java.io.InputStream;
 

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ProtocolCodecFilterSessionConfigListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ProtocolCodecFilterSessionConfigListener.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ProtocolCodecFilterSessionConfigListener.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/ProtocolCodecFilterSessionConfigListener.java Fri Dec 18 06:44:00 2009
@@ -16,13 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolCodecFilter;
 
 import org.apache.ahc.api.HttpRequest;
-import org.apache.ahc.client.api.SessionConfigListener;
+import org.apache.ahc.mina2.api.SessionConfigListener;
 
 
 /**

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslConfig.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslConfig.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslConfig.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslConfig.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import javax.net.ssl.KeyManager;
 import javax.net.ssl.SSLContext;

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslSessionConfigListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslSessionConfigListener.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslSessionConfigListener.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/SslSessionConfigListener.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina2;
 
 import javax.net.ssl.SSLContext;
 import java.security.GeneralSecurityException;
@@ -25,7 +25,7 @@
 import org.apache.mina.filter.ssl.SslFilter;
 
 import org.apache.ahc.api.HttpRequest;
-import org.apache.ahc.client.api.SessionConfigListener;
+import org.apache.ahc.mina2.api.SessionConfigListener;
 
 
 /**

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/IoSessionCache.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/IoSessionCache.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/IoSessionCache.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/IoSessionCache.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client.api;
+package org.apache.ahc.mina2.api;
 
 import java.net.InetSocketAddress;
 

Modified: mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/SessionConfigListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/SessionConfigListener.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/SessionConfigListener.java (original)
+++ mina/sandbox/adc/ahc/mina2/src/main/java/org/apache/ahc/mina2/api/SessionConfigListener.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client.api;
+package org.apache.ahc.mina2.api;
 
 import org.apache.mina.core.session.IoSession;
 

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatch.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatch.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatch.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatch.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -60,7 +60,7 @@
 
     public HttpBatch get(String url) throws MalformedURLException
     {
-        HttpRequest request = new HttpRequest();
+        HttpRequest request = new AsyncHttpRequest();
 
         request.setUrl(new URL(url));
         request.setVerb(HttpVerb.GET);

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatchFuture.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatchFuture.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatchFuture.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpBatchFuture.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.util.List;
 import java.util.concurrent.ExecutionException;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClient.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClient.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClient.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClient.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.net.InetAddress;
 import java.net.InetSocketAddress;
@@ -25,8 +25,6 @@
 import java.util.Queue;
 import java.util.concurrent.TimeUnit;
 
-import org.apache.mina.core.session.IoSession;
-
 import org.apache.ahc.api.HttpBatch;
 import org.apache.ahc.api.HttpClient;
 import org.apache.ahc.api.HttpClientFutureImpl;
@@ -36,6 +34,7 @@
 import org.apache.ahc.api.HttpRequest;
 import org.apache.ahc.api.HttpResponse;
 import org.apache.ahc.api.MimeContent;
+import org.apache.mina.core.IoSession;
 
 
 /**

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClientFutureException.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClientFutureException.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClientFutureException.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpClientFutureException.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.ahc.api.HttpClientFutureImpl;
 import org.apache.ahc.api.HttpResponse;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConfig.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConfig.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConfig.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpConfig.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.ahc.api.HttpConfig;
 

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=892157&r1=892156&r2=892157&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 Dec 18 06:44:00 2009
@@ -16,19 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.net.InetSocketAddress;
 import java.net.URL;
 
-import org.apache.mina.core.future.ConnectFuture;
-import org.apache.mina.core.future.DefaultConnectFuture;
-import org.apache.mina.core.future.IoFuture;
-import org.apache.mina.core.future.IoFutureListener;
-import org.apache.mina.core.service.IoConnector;
-import org.apache.mina.core.session.IoSession;
-import org.apache.mina.transport.socket.nio.NioSocketConnector;
-
 import org.apache.ahc.api.HttpClient;
 import org.apache.ahc.api.HttpClientFutureImpl;
 import org.apache.ahc.api.HttpConfig;
@@ -36,8 +28,10 @@
 import org.apache.ahc.api.HttpListener;
 import org.apache.ahc.api.HttpRequest;
 import org.apache.ahc.api.HttpResponse;
-import org.apache.ahc.client.api.IoSessionCache;
-import org.apache.ahc.client.api.SessionConfigListener;
+import org.apache.ahc.mina3.api.IoSessionCache;
+import org.apache.mina.core.IoConnector;
+import org.apache.mina.core.IoSession;
+import org.apache.mina.nio.NioSocketConnector;
 
 
 /**
@@ -47,6 +41,7 @@
 {
     private final AsyncHttpClient httpClient;
     private final EquipmentStack stack;
+    public static final String TAIL = AsyncHttpConnection.class.getName() + ".TAIL";
 
     public AsyncHttpConnection(AsyncHttpClient httpClient, EquipmentStack stack)
     {
@@ -111,78 +106,12 @@
                 final IoConnector connector = new NioSocketConnector();
 
                 final IoSession session = cache.getIoSession(connector, address);
-                ConnectFuture future = new DefaultConnectFuture();
-                future.setSession(session);
 
                 return new HttpClientFutureImpl<HttpResponse>(new HttpClientFutureImpl.FutureResultOwner<HttpResponse>()
                 {
                     EquipmentStack e = new EquipmentStack(stack);
                     HttpClientFutureImpl.ChangeListener<HttpResponse> changeListener;
 
-                    {
-                        ConnectFuture future = connector.connect();
-                        future.addListener(new IoFutureListener()
-                        {
-                            public void operationComplete(IoFuture future)
-                            {
-                                //Todo change body of implemented methods use File | Settings | File Templates.
-                                ConnectFuture connFuture = (ConnectFuture)future;
-
-                                try
-                                {
-                                    if (connFuture.isConnected())
-                                    {
-                                        IoSession sess = future.getSession();
-
-                                        for (SessionConfigListener listener : e.getListeners(SessionConfigListener.class))
-                                            listener.configure(session, request);
-
-                                        // add the protocol filter (if it's not there already like
-                                        // in a reused session)
-                                        // addProtocolCodecFilter(sess);
-                                        // (optional) add the executor filter for the event thread
-                                        // pool (if it's not there already like in a reused session)
-                                        // addEventThreadPoolFilter(sess);
-                                        // now that we're connection, configure the session appropriately.
-                                        // configureSession(sess);
-
-                                        // and finally start the request process rolling.
-                                        session.write(request);
-
-                                        // notifyMonitoringListeners(MonitoringEvent.CONNECTION_SUCCESSFUL, request);
-                                    }
-                                    else
-                                    {
-//                                        if (retries-- > 0)
-//                                        {
-//                                            // go retry this connection
-//                                            retryConnection(request, response, this);
-//                                        }
-//                                        else
-//                                        {
-//                                            future.getSession();
-//                                            throw new AsyncHttpClientException("Connection failed.");
-//                                        }
-                                    }
-                                }
-                                catch (RuntimeException re)
-                                {
-                                    // set the future exception to ensure the exception propagate
-//                                    response.setException(re);
-//                                    notifyMonitoringListeners(MonitoringEvent.CONNECTION_FAILED, request);
-                                    throw re;
-                                }
-                                catch (Error e)
-                                {
-                                    // set the future exception to ensure the exception propagate
-//                                    response.setException(e);
-//                                    notifyMonitoringListeners(MonitoringEvent.CONNECTION_FAILED, request);
-                                    throw e;
-                                }
-                            }
-                        });
-                    }
-
                     public void set(HttpClientFutureImpl.ChangeListener<HttpResponse> changeListener)
                     {
                         this.changeListener = changeListener;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpFactory.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpFactory.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpFactory.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpFactory.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.ahc.api.HttpClient;
 import org.apache.ahc.api.HttpConfig;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoFuture.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoFuture.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoFuture.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoFuture.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.util.concurrent.TimeUnit;
 

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoSessionInitializer.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoSessionInitializer.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoSessionInitializer.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpIoSessionInitializer.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.mina.core.future.IoFuture;
 import org.apache.mina.core.session.IoSession;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolCodecFactory.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolCodecFactory.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolCodecFactory.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolCodecFactory.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolCodecFactory;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolDecoder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolDecoder.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolDecoder.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpProtocolDecoder.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.mina.core.buffer.IoBuffer;
 import org.apache.mina.core.session.IoSession;

Added: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpRequest.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpRequest.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpRequest.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/AsyncHttpRequest.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,80 @@
+/**
+ * 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.ahc.mina3;
+
+import java.util.Set;
+
+import org.apache.ahc.api.HttpConfig;
+import org.apache.ahc.api.HttpListener;
+import org.apache.ahc.api.HttpRequest;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public class AsyncHttpRequest extends HttpRequest
+{
+    @Override
+    public <T extends HttpConfig> T getConfig(Class<T> clazz)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public HttpRequest equipWith(HttpConfig config)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public <T extends HttpListener> Set<T> getListeners(Class<T> clazz)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public HttpRequest equipWith(HttpListener listener)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public Object getEquip(String key)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public HttpRequest equipWith(String key, Object value)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public HttpRequest push()
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+
+    @Override
+    public HttpRequest pop()
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+}

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ByteArrayBasedMimeContent.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ByteArrayBasedMimeContent.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ByteArrayBasedMimeContent.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ByteArrayBasedMimeContent.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultIoSessionCache.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultIoSessionCache.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultIoSessionCache.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultIoSessionCache.java Fri Dec 18 06:44:00 2009
@@ -16,15 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.net.InetSocketAddress;
 
-import org.apache.mina.core.future.ConnectFuture;
-import org.apache.mina.core.service.IoConnector;
-import org.apache.mina.core.session.IoSession;
-
-import org.apache.ahc.client.api.IoSessionCache;
+import org.apache.ahc.mina3.api.IoSessionCache;
+import org.apache.mina.core.IoConnector;
+import org.apache.mina.core.IoSession;
 
 
 /**
@@ -34,11 +32,7 @@
 {
     public IoSession getIoSession(IoConnector connector, InetSocketAddress address) throws Throwable
     {
-        ConnectFuture future = connector.connect(address).awaitUninterruptibly();
-
-        if (future.getException() != null) throw future.getException();
-
-        return future.getSession();
+        return connector.connect(address).get();
     }
 
     public void returnIoSession(IoSession session)

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultSslConfig.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultSslConfig.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultSslConfig.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/DefaultSslConfig.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import javax.net.ssl.TrustManager;
 import javax.net.ssl.X509TrustManager;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/EquipmentStack.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/EquipmentStack.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/EquipmentStack.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/EquipmentStack.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.util.ArrayList;
 import java.util.EmptyStackException;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpProtocolCodecFactory.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpProtocolCodecFactory.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpProtocolCodecFactory.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpProtocolCodecFactory.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolCodecFactory;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpRequestEncoder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpRequestEncoder.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpRequestEncoder.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpRequestEncoder.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.filter.codec.ProtocolEncoderAdapter;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpResponseDecoder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpResponseDecoder.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpResponseDecoder.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/HttpResponseDecoder.java Fri Dec 18 06:44:00 2009
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import org.apache.mina.core.buffer.IoBuffer;
-import org.apache.mina.core.session.IoSession;
+import org.apache.mina.core.IoSession;
 import org.apache.mina.filter.codec.ProtocolDecoderAdapter;
 import org.apache.mina.filter.codec.ProtocolDecoderOutput;
 

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/InputStreamBasedMimeContent.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/InputStreamBasedMimeContent.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/InputStreamBasedMimeContent.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/InputStreamBasedMimeContent.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import java.io.InputStream;
 

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ProtocolCodecFilterSessionConfigListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ProtocolCodecFilterSessionConfigListener.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ProtocolCodecFilterSessionConfigListener.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/ProtocolCodecFilterSessionConfigListener.java Fri Dec 18 06:44:00 2009
@@ -16,13 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
-import org.apache.mina.core.session.IoSession;
-import org.apache.mina.filter.codec.ProtocolCodecFilter;
+import org.apache.mina.core.IoSession;
 
 import org.apache.ahc.api.HttpRequest;
-import org.apache.ahc.client.api.SessionConfigListener;
+import org.apache.ahc.mina3.api.SessionConfigListener;
 
 
 /**

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslConfig.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslConfig.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslConfig.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslConfig.java Fri Dec 18 06:44:00 2009
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import javax.net.ssl.KeyManager;
 import javax.net.ssl.SSLContext;

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslSessionConfigListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslSessionConfigListener.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslSessionConfigListener.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/SslSessionConfigListener.java Fri Dec 18 06:44:00 2009
@@ -16,16 +16,19 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client;
+package org.apache.ahc.mina3;
 
 import javax.net.ssl.SSLContext;
 import java.security.GeneralSecurityException;
-
-import org.apache.mina.core.session.IoSession;
-import org.apache.mina.filter.ssl.SslFilter;
+import java.util.HashSet;
+import java.util.Set;
 
 import org.apache.ahc.api.HttpRequest;
-import org.apache.ahc.client.api.SessionConfigListener;
+import org.apache.ahc.mina3.api.SessionConfigListener;
+import org.apache.mina.core.IoChannel;
+import org.apache.mina.core.IoChannels;
+import org.apache.mina.core.IoSession;
+import org.apache.mina.core.SslChannel;
 
 
 /**
@@ -41,19 +44,31 @@
 
         if ("https".equalsIgnoreCase(scheme))
         {
+            IoChannels channels = session.getChannels();
+
             // add the SSL filter if it's not there already, i.e. in a reused session
-            if (!session.getFilterChain().contains(SSL_FILTER))
+            if (channels.get(SSL_FILTER) != null)
             {
                 try
                 {
-                    SslFilter sslFilter = createSslFilter(request);
-                    session.getFilterChain().addLast(SSL_FILTER, sslFilter);
+                    SslChannel sslChannel = createSslFilter(request);
+                    channels.mark(sslChannel, SSL_FILTER);
+
+                    IoChannel tail = channels.get(AsyncHttpConnection.TAIL);
+                    Set<IoChannel> children = new HashSet<IoChannel>(tail.getChildren());
+
+                    tail.getChildren().clear();
+                    tail.getChildren().add(sslChannel);
+
+                    sslChannel.getChildren().addAll(children);
+
+                    channels.mark(sslChannel, AsyncHttpConnection.TAIL);
                 }
-                catch (GeneralSecurityException e)
+                catch (GeneralSecurityException gse)
                 {
                     try
                     {
-                        session.getHandler().exceptionCaught(session, e);
+                        session.exceptionCaught(gse);
                     }
                     catch (Exception ignore)
                     {
@@ -72,7 +87,7 @@
      * @return An appropriately configured SSLFilter for this connection.
      * @throws GeneralSecurityException if there was a problem generating the SSL Filter
      */
-    protected SslFilter createSslFilter(HttpRequest request) throws GeneralSecurityException
+    protected SslChannel createSslFilter(HttpRequest request) throws GeneralSecurityException
     {
         SslConfig config = request.getConfig(SslConfig.class);
         SSLContext context = config.getSslContext();
@@ -84,9 +99,6 @@
             context.init(config.getKeyManagers(), config.getTrustManagers(), config.getSecureRandom());
         }
 
-        SslFilter sslFilter = new SslFilter(context);
-        sslFilter.setUseClientMode(true);
-
-        return sslFilter;
+        return new SslChannel(context);
     }
 }

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/IoSessionCache.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/IoSessionCache.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/IoSessionCache.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/IoSessionCache.java Fri Dec 18 06:44:00 2009
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client.api;
+package org.apache.ahc.mina3.api;
 
 import java.net.InetSocketAddress;
 
-import org.apache.mina.core.service.IoConnector;
-import org.apache.mina.core.session.IoSession;
+import org.apache.mina.core.IoConnector;
+import org.apache.mina.core.IoSession;
 
 import org.apache.ahc.api.HttpConfig;
 

Modified: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/SessionConfigListener.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/SessionConfigListener.java?rev=892157&r1=892156&r2=892157&view=diff
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/SessionConfigListener.java (original)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/ahc/mina3/api/SessionConfigListener.java Fri Dec 18 06:44:00 2009
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ahc.client.api;
+package org.apache.ahc.mina3.api;
 
-import org.apache.mina.core.session.IoSession;
+import org.apache.mina.core.IoSession;
 
 import org.apache.ahc.api.HttpListener;
 import org.apache.ahc.api.HttpRequest;

Added: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannel.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannel.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannel.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannel.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,34 @@
+/**
+ * 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.core;
+
+import java.util.Set;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public interface IoChannel
+{
+    Set<IoChannel> getParents();
+
+    Set<IoChannel> getChildren();
+
+    void messageReceived(IoSession session, Object message) throws Exception;
+}

Added: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannels.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannels.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannels.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoChannels.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,31 @@
+/**
+ * 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.core;
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public interface IoChannels
+{
+    IoChannel getRoot();
+
+    IoChannel get(String filterName);
+
+    void mark(IoChannel channel, String filterName);
+}

Added: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoConnector.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoConnector.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoConnector.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoConnector.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,31 @@
+/**
+ * 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.core;
+
+import java.net.InetSocketAddress;
+import java.util.concurrent.Future;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public interface IoConnector
+{
+    Future<IoSession> connect(InetSocketAddress address);
+}

Added: 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=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoFilter.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,33 @@
+/**
+ * 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.core;
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public interface IoFilter
+{
+    void init();
+
+    void destroy();
+
+    void messageReceived(IoSession session, Object message) throws Exception;
+
+    void messageSent(IoSession session, Object message) throws Exception;
+}

Added: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoSession.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoSession.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoSession.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/IoSession.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,34 @@
+/**
+ * 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.core;
+
+import java.security.GeneralSecurityException;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public interface IoSession
+{
+    void close(boolean b);
+
+    void exceptionCaught(GeneralSecurityException gse);
+
+    IoChannels getChannels();
+}

Added: mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/SslChannel.java
URL: http://svn.apache.org/viewvc/mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/SslChannel.java?rev=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/SslChannel.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/core/SslChannel.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,33 @@
+/**
+ * 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.core;
+
+import javax.net.ssl.SSLContext;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public class SslChannel implements IoChannel
+{
+    public SslChannel(SSLContext context)
+    {
+        //Todo change body of created methods use File | Settings | File Templates.
+    }
+}

Added: 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=892157&view=auto
==============================================================================
--- mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java (added)
+++ mina/sandbox/adc/ahc/mina3/src/main/java/org/apache/mina/nio/NioSocketConnector.java Fri Dec 18 06:44:00 2009
@@ -0,0 +1,37 @@
+/**
+ * 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.nio;
+
+import java.net.InetSocketAddress;
+import java.util.concurrent.Future;
+
+import org.apache.mina.core.IoConnector;
+import org.apache.mina.core.IoSession;
+
+
+/**
+ * @version $Revision: $ $Date: $
+ */
+public class NioSocketConnector implements IoConnector
+{
+    public Future<IoSession> connect(InetSocketAddress address)
+    {
+        return null;  //Todo change body of implemented methods use File | Settings | File Templates.
+    }
+}