You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2017/11/08 15:00:02 UTC

httpcomponents-core git commit: Generic Factory function to take an input parameter

Repository: httpcomponents-core
Updated Branches:
  refs/heads/master 635437371 -> 6893add31


Generic Factory function to take an input parameter


Project: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/commit/6893add3
Tree: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/tree/6893add3
Diff: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/diff/6893add3

Branch: refs/heads/master
Commit: 6893add31a39a92783416587532fb47d216c7ab9
Parents: 6354373
Author: Oleg Kalnichevski <ol...@apache.org>
Authored: Wed Nov 8 15:08:44 2017 +0100
Committer: Oleg Kalnichevski <ol...@apache.org>
Committed: Wed Nov 8 15:56:35 2017 +0100

----------------------------------------------------------------------
 .../org/apache/hc/core5/function/Factory.java     |  4 ++--
 .../http/protocol/RequestHandlerRegistry.java     | 18 +++++++++---------
 .../http/protocol/TestRequestHandlerRegistry.java |  6 +++---
 3 files changed, 14 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/6893add3/httpcore5/src/main/java/org/apache/hc/core5/function/Factory.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/function/Factory.java b/httpcore5/src/main/java/org/apache/hc/core5/function/Factory.java
index ea9cb95..6236202 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/function/Factory.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/function/Factory.java
@@ -32,8 +32,8 @@ package org.apache.hc.core5.function;
  *
  * @since 5.0
  */
-public interface Factory<T> {
+public interface Factory<P, T> {
 
-    T create();
+    T create(P parameter);
 
 }

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/6893add3/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestHandlerRegistry.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestHandlerRegistry.java b/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestHandlerRegistry.java
index fecdc43..935d3a9 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestHandlerRegistry.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestHandlerRegistry.java
@@ -33,7 +33,7 @@ import java.util.concurrent.ConcurrentMap;
 
 import org.apache.hc.core5.annotation.Contract;
 import org.apache.hc.core5.annotation.ThreadingBehavior;
-import org.apache.hc.core5.function.Factory;
+import org.apache.hc.core5.function.Supplier;
 import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestMapper;
 import org.apache.hc.core5.http.MisdirectedRequestException;
@@ -46,31 +46,31 @@ public class RequestHandlerRegistry<T> implements HttpRequestMapper<T> {
     private final static String LOCALHOST = "localhost";
 
     private final String canonicalHostName;
-    private final Factory<LookupRegistry<T>> registryFactory;
+    private final Supplier<LookupRegistry<T>> registrySupplier;
     private final LookupRegistry<T> primary;
     private final ConcurrentMap<String, LookupRegistry<T>> virtualMap;
 
-    public RequestHandlerRegistry(final String canonicalHostName, final Factory<LookupRegistry<T>> registryFactory) {
+    public RequestHandlerRegistry(final String canonicalHostName, final Supplier<LookupRegistry<T>> registrySupplier) {
         this.canonicalHostName = Args.notNull(canonicalHostName, "Canonical hostname").toLowerCase(Locale.ROOT);
-        this.registryFactory = registryFactory != null ? registryFactory : new Factory<LookupRegistry<T>>() {
+        this.registrySupplier = registrySupplier != null ? registrySupplier : new Supplier<LookupRegistry<T>>() {
 
             @Override
-            public LookupRegistry<T> create() {
+            public LookupRegistry<T> get() {
                 return new UriPatternMatcher<>();
             }
 
         };
-        this.primary = this.registryFactory.create();
+        this.primary = this.registrySupplier.get();
         this.virtualMap = new ConcurrentHashMap<>();
     }
 
 
 
     public RequestHandlerRegistry(final String canonicalHostName, final UriPatternType patternType) {
-        this(canonicalHostName, new Factory<LookupRegistry<T>>() {
+        this(canonicalHostName, new Supplier<LookupRegistry<T>>() {
 
             @Override
-            public LookupRegistry<T> create() {
+            public LookupRegistry<T> get() {
                 return UriPatternType.newMatcher(patternType);
             }
 
@@ -122,7 +122,7 @@ public class RequestHandlerRegistry<T> implements HttpRequestMapper<T> {
         } else {
             LookupRegistry<T> patternMatcher = virtualMap.get(key);
             if (patternMatcher == null) {
-                final LookupRegistry<T> newPatternMatcher = registryFactory.create();
+                final LookupRegistry<T> newPatternMatcher = registrySupplier.get();
                 patternMatcher = virtualMap.putIfAbsent(key, newPatternMatcher);
                 if (patternMatcher == null) {
                     patternMatcher = newPatternMatcher;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/6893add3/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/TestRequestHandlerRegistry.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/TestRequestHandlerRegistry.java b/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/TestRequestHandlerRegistry.java
index 8342e13..943a69c 100644
--- a/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/TestRequestHandlerRegistry.java
+++ b/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/TestRequestHandlerRegistry.java
@@ -27,7 +27,7 @@
 
 package org.apache.hc.core5.http.protocol;
 
-import org.apache.hc.core5.function.Factory;
+import org.apache.hc.core5.function.Supplier;
 import org.apache.hc.core5.http.HttpHost;
 import org.apache.hc.core5.http.MisdirectedRequestException;
 import org.apache.hc.core5.http.message.BasicHttpRequest;
@@ -42,10 +42,10 @@ public class TestRequestHandlerRegistry {
 
     @Before
     public void setUp() {
-        handlerRegistry = new RequestHandlerRegistry<>("myhost", new Factory<LookupRegistry<String>>() {
+        handlerRegistry = new RequestHandlerRegistry<>("myhost", new Supplier<LookupRegistry<String>>() {
 
             @Override
-            public LookupRegistry<String> create() {
+            public LookupRegistry<String> get() {
                 return new UriPatternMatcher<>();
             }