Author: olamy
Date: Thu Apr 26 16:32:27 2012
New Revision: 1330934

URL: http://svn.apache.org/viewvc?rev=1330934&view=rev
Log:
use Builder pattern for building client

Modified:
    
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DefaultDirectMemoryClient.java
    
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryClientConfiguration.java
    
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryHttpClient.java
    
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/HttpClientDirectMemoryHttpClient.java
    
incubator/directmemory/trunk/server/directmemory-server/src/test/java/org/apache/directmemory/server/services/AbstractServletWithClientTest.java

Modified: 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DefaultDirectMemoryClient.java
URL: 
http://svn.apache.org/viewvc/incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DefaultDirectMemoryClient.java?rev=1330934&r1=1330933&r2=1330934&view=diff
==============================================================================
--- 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DefaultDirectMemoryClient.java
 (original)
+++ 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DefaultDirectMemoryClient.java
 Thu Apr 26 16:32:27 2012
@@ -33,20 +33,16 @@ public class DefaultDirectMemoryClient
     implements DirectMemoryClient
 {
 
-    public static DirectMemoryClient instance( DirectMemoryClientConfiguration 
configuration )
-        throws DirectMemoryException
-    {
-        return new DefaultDirectMemoryClient( configuration );
-    }
 
     private DirectMemoryClientConfiguration clientConfiguration;
 
     private DirectMemoryHttpClient directMemoryHttpClient;
 
-    private DefaultDirectMemoryClient( DirectMemoryClientConfiguration 
configuration )
+    protected DefaultDirectMemoryClient( DirectMemoryClientConfiguration 
configuration,
+                                       DirectMemoryHttpClient 
directMemoryHttpClient )
         throws DirectMemoryException
     {
-        this.directMemoryHttpClient = 
configuration.getDirectMemoryHttpClient();
+        this.directMemoryHttpClient = directMemoryHttpClient;
         this.clientConfiguration = configuration;
     }
 
@@ -111,7 +107,7 @@ public class DefaultDirectMemoryClient
         return this.directMemoryHttpClient.asyncDelete( 
directMemoryRequest.setDeleteRequest( true ) );
     }
 
-    private void verifyPerRequestParameters(DirectMemoryRequest request)
+    private void verifyPerRequestParameters( DirectMemoryRequest request )
     {
         if ( request.getSerializer() == null )
         {

Modified: 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryClientConfiguration.java
URL: 
http://svn.apache.org/viewvc/incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryClientConfiguration.java?rev=1330934&r1=1330933&r2=1330934&view=diff
==============================================================================
--- 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryClientConfiguration.java
 (original)
+++ 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryClientConfiguration.java
 Thu Apr 26 16:32:27 2012
@@ -19,7 +19,6 @@ package org.apache.directmemory.server.c
  */
 
 import org.apache.directmemory.serialization.Serializer;
-import org.apache.directmemory.server.commons.DirectMemoryException;
 import org.apache.directmemory.server.commons.ExchangeType;
 
 /**
@@ -53,7 +52,7 @@ public class DirectMemoryClientConfigura
 
     private Serializer serializer;
 
-    private DirectMemoryHttpClient directMemoryHttpClient;
+    private String httpClientClassName = 
DirectMemoryClientBuilder.DEFAULT_HTTP_CLIENT_INSTANCE;
 
     public DirectMemoryClientConfiguration()
     {
@@ -93,19 +92,6 @@ public class DirectMemoryClientConfigura
         return this;
     }
 
-    public DirectMemoryHttpClient getDirectMemoryHttpClient()
-    {
-        return directMemoryHttpClient;
-    }
-
-    public DirectMemoryClientConfiguration setDirectMemoryHttpClient(
-        DirectMemoryHttpClient directMemoryHttpClient )
-        throws DirectMemoryException
-    {
-        this.directMemoryHttpClient = directMemoryHttpClient;
-        this.directMemoryHttpClient.configure( this );
-        return this;
-    }
 
     public int getMaxConcurentConnection()
     {
@@ -172,4 +158,33 @@ public class DirectMemoryClientConfigura
         this.serializer = serializer;
         return this;
     }
+
+    public String getHttpClientClassName()
+    {
+        return httpClientClassName;
+    }
+
+    public void setHttpClientClassName( String httpClientClassName )
+    {
+        this.httpClientClassName = httpClientClassName;
+    }
+
+    @Override
+    public String toString()
+    {
+        final StringBuilder sb = new StringBuilder();
+        sb.append( "DirectMemoryClientConfiguration" );
+        sb.append( "{protocol='" ).append( protocol ).append( '\'' );
+        sb.append( ", host='" ).append( host ).append( '\'' );
+        sb.append( ", port=" ).append( port );
+        sb.append( ", httpPath='" ).append( httpPath ).append( '\'' );
+        sb.append( ", maxConcurentConnection=" ).append( 
maxConcurentConnection );
+        sb.append( ", connectionTimeOut=" ).append( connectionTimeOut );
+        sb.append( ", readTimeOut=" ).append( readTimeOut );
+        sb.append( ", exchangeType=" ).append( exchangeType );
+        sb.append( ", serializer=" ).append( serializer );
+        sb.append( ", httpClientClassName='" ).append( httpClientClassName 
).append( '\'' );
+        sb.append( '}' );
+        return sb.toString();
+    }
 }

Modified: 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryHttpClient.java
URL: 
http://svn.apache.org/viewvc/incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryHttpClient.java?rev=1330934&r1=1330933&r2=1330934&view=diff
==============================================================================
--- 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryHttpClient.java
 (original)
+++ 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/DirectMemoryHttpClient.java
 Thu Apr 26 16:32:27 2012
@@ -29,9 +29,6 @@ import java.util.concurrent.Future;
  */
 public interface DirectMemoryHttpClient
 {
-    void configure( DirectMemoryClientConfiguration configuration )
-        throws DirectMemoryException;
-
     DirectMemoryResponse put( DirectMemoryRequest request )
         throws DirectMemoryException;
 

Modified: 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/HttpClientDirectMemoryHttpClient.java
URL: 
http://svn.apache.org/viewvc/incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/HttpClientDirectMemoryHttpClient.java?rev=1330934&r1=1330933&r2=1330934&view=diff
==============================================================================
--- 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/HttpClientDirectMemoryHttpClient.java
 (original)
+++ 
incubator/directmemory/trunk/server/directmemory-server-client/src/main/java/org/apache/directmemory/server/client/HttpClientDirectMemoryHttpClient.java
 Thu Apr 26 16:32:27 2012
@@ -50,10 +50,6 @@ public class HttpClientDirectMemoryHttpC
 {
     private Logger log = LoggerFactory.getLogger( getClass() );
 
-    public static HttpClientDirectMemoryHttpClient instance( 
DirectMemoryClientConfiguration configuration )
-    {
-        return new HttpClientDirectMemoryHttpClient( configuration );
-    }
 
     private HttpClient httpClient;
 
@@ -61,11 +57,11 @@ public class HttpClientDirectMemoryHttpC
     public HttpClientDirectMemoryHttpClient( DirectMemoryClientConfiguration 
configuration )
     {
         super( configuration );
+        this.configure( configuration );
     }
 
-    @Override
+
     public void configure( DirectMemoryClientConfiguration configuration )
-        throws DirectMemoryException
     {
         this.configuration = configuration;
         ThreadSafeClientConnManager threadSafeClientConnManager = new 
ThreadSafeClientConnManager();

Modified: 
incubator/directmemory/trunk/server/directmemory-server/src/test/java/org/apache/directmemory/server/services/AbstractServletWithClientTest.java
URL: 
http://svn.apache.org/viewvc/incubator/directmemory/trunk/server/directmemory-server/src/test/java/org/apache/directmemory/server/services/AbstractServletWithClientTest.java?rev=1330934&r1=1330933&r2=1330934&view=diff
==============================================================================
--- 
incubator/directmemory/trunk/server/directmemory-server/src/test/java/org/apache/directmemory/server/services/AbstractServletWithClientTest.java
 (original)
+++ 
incubator/directmemory/trunk/server/directmemory-server/src/test/java/org/apache/directmemory/server/services/AbstractServletWithClientTest.java
 Thu Apr 26 16:32:27 2012
@@ -21,11 +21,9 @@ package org.apache.directmemory.server.s
 import org.apache.catalina.Context;
 import org.apache.catalina.startup.Tomcat;
 import org.apache.directmemory.serialization.SerializerFactory;
-import org.apache.directmemory.server.client.DefaultDirectMemoryClient;
 import org.apache.directmemory.server.client.DirectMemoryClient;
+import org.apache.directmemory.server.client.DirectMemoryClientBuilder;
 import org.apache.directmemory.server.client.DirectMemoryClientConfiguration;
-import org.apache.directmemory.server.client.DirectMemoryHttpClient;
-import org.apache.directmemory.server.client.HttpClientDirectMemoryHttpClient;
 import org.apache.directmemory.server.commons.DirectMemoryRequest;
 import org.apache.directmemory.server.commons.DirectMemoryResponse;
 import org.apache.directmemory.server.commons.ExchangeType;
@@ -83,10 +81,7 @@ public abstract class AbstractServletWit
                 .setSerializer( SerializerFactory.createNewSerializer() )
                 .setExchangeType( getExchangeType() );
 
-        DirectMemoryHttpClient httpClient = 
HttpClientDirectMemoryHttpClient.instance( configuration );
-        configuration.setDirectMemoryHttpClient( httpClient );
-
-        client = DefaultDirectMemoryClient.instance( configuration );
+        client = DirectMemoryClientBuilder.newBuilder( configuration 
).buildClient();
         // END SNIPPET: client-configuration
 
         for ( int i = 0; i < 1000000; i++ )


Reply via email to