From 0198b67141ea1b217484f7d83a03c0eabeb9da7c Mon Sep 17 00:00:00 2001 From: Michael Hunger Date: Mon, 18 Jul 2011 23:51:29 +0200 Subject: [PATCH] Added Read and Connect Timeout to RestRequest --- .../data/neo4j/rest/RestRequest.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/spring-data-neo4j-rest/src/main/java/org/springframework/data/neo4j/rest/RestRequest.java b/spring-data-neo4j-rest/src/main/java/org/springframework/data/neo4j/rest/RestRequest.java index 5fc4ce2aa..395ee5a2a 100644 --- a/spring-data-neo4j-rest/src/main/java/org/springframework/data/neo4j/rest/RestRequest.java +++ b/spring-data-neo4j-rest/src/main/java/org/springframework/data/neo4j/rest/RestRequest.java @@ -29,9 +29,12 @@ import java.net.URI; import java.net.URISyntaxException; import java.net.URLEncoder; import java.util.Map; +import java.util.concurrent.TimeUnit; public class RestRequest { + public static final int CONNECT_TIMEOUT = (int) TimeUnit.SECONDS.toMillis(30); + public static final int READ_TIMEOUT = (int) TimeUnit.SECONDS.toMillis(30); private final URI baseUri; private final Client client; @@ -41,11 +44,25 @@ public class RestRequest { public RestRequest( URI baseUri, String username, String password ) { this.baseUri = uriWithoutSlash( baseUri ); - client = Client.create(); - if ( username != null ) client.addFilter( new HTTPBasicAuthFilter( username, password ) ); + client = createClient(); + addAuthFilter(username, password); } + private void addAuthFilter(String username, String password) { + if (username == null) return; + client.addFilter( new HTTPBasicAuthFilter( username, password ) ); + } + + private Client createClient() { + Client client = Client.create(); + + client.setConnectTimeout(CONNECT_TIMEOUT); + client.setReadTimeout(READ_TIMEOUT); + + return client; + } + private RestRequest( URI uri, Client client ) { this.baseUri = uriWithoutSlash( uri ); this.client = client;