summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java
diff options
context:
space:
mode:
authorrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2011-09-02 16:17:38 +0000
committerrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2011-09-02 16:17:38 +0000
commited1440d4265412db68f41f07e570511a56947081 (patch)
tree8622e5e9989552023a731f128046154261baf63b /sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java
parentfae4b7f974ac7ae22d0a8e5c6923d2cb021081f8 (diff)
Fix the usage of HttpClient and make sure connections are closed gracefully
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1164605 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r--sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java
index 9f4ea496c1..024705803f 100644
--- a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java
+++ b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomReferenceBindingProvider.java
@@ -39,6 +39,7 @@ import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
* @version $Rev$ $Date$
*/
class AtomReferenceBindingProvider implements ReferenceBindingProvider {
+ private HttpClientFactory httpClientFactory;
private EndpointReference endpointReference;
private RuntimeComponentReference reference;
private AtomBinding binding;
@@ -56,11 +57,13 @@ class AtomReferenceBindingProvider implements ReferenceBindingProvider {
* @param binding
* @param mediator
*/
- AtomReferenceBindingProvider(EndpointReference endpointReference,
+ AtomReferenceBindingProvider(HttpClientFactory httpClientFactory,
+ EndpointReference endpointReference,
Mediator mediator) {
+ this.httpClientFactory = httpClientFactory;
this.endpointReference = endpointReference;
- this.reference = (RuntimeComponentReference) endpointReference.getReference();
- this.binding = (AtomBinding) endpointReference.getBinding();
+ this.reference = (RuntimeComponentReference)endpointReference.getReference();
+ this.binding = (AtomBinding)endpointReference.getBinding();
this.mediator = mediator;
// Prepare authorization header
@@ -121,8 +124,7 @@ class AtomReferenceBindingProvider implements ReferenceBindingProvider {
// Find the get operation on the reference interface
// Create an HTTP client
- HttpClientFactory clientFactory = new HttpClientFactory();
- httpClient = clientFactory.createHttpClient();
+ httpClient = httpClientFactory.createHttpClient();
}
public void stop() {