From 45489ed1af13c6090486c9357e8745c4929d4a83 Mon Sep 17 00:00:00 2001 From: kimchy Date: Fri, 5 Mar 2010 01:50:40 +0200 Subject: [PATCH] add TimeValue based getter --- .../main/java/org/elasticsearch/action/ActionFuture.java | 8 ++++++++ .../elasticsearch/action/support/PlainActionFuture.java | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/modules/elasticsearch/src/main/java/org/elasticsearch/action/ActionFuture.java b/modules/elasticsearch/src/main/java/org/elasticsearch/action/ActionFuture.java index de336c2c08a..7ce1581f638 100644 --- a/modules/elasticsearch/src/main/java/org/elasticsearch/action/ActionFuture.java +++ b/modules/elasticsearch/src/main/java/org/elasticsearch/action/ActionFuture.java @@ -20,6 +20,7 @@ package org.elasticsearch.action; import org.elasticsearch.ElasticSearchException; +import org.elasticsearch.util.TimeValue; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; @@ -53,4 +54,11 @@ public interface ActionFuture extends Future { * cause of the {@link java.util.concurrent.ExecutionException}. */ T actionGet(long timeout, TimeUnit unit) throws ElasticSearchException; + + /** + * Similar to {@link #get(long, java.util.concurrent.TimeUnit)}, just wrapping the {@link InterruptedException} with + * {@link org.elasticsearch.ElasticSearchInterruptedException}, and throwing the actual + * cause of the {@link java.util.concurrent.ExecutionException}. + */ + T actionGet(TimeValue timeout) throws ElasticSearchException; } diff --git a/modules/elasticsearch/src/main/java/org/elasticsearch/action/support/PlainActionFuture.java b/modules/elasticsearch/src/main/java/org/elasticsearch/action/support/PlainActionFuture.java index 7a1efa80978..02291bfa275 100644 --- a/modules/elasticsearch/src/main/java/org/elasticsearch/action/support/PlainActionFuture.java +++ b/modules/elasticsearch/src/main/java/org/elasticsearch/action/support/PlainActionFuture.java @@ -25,6 +25,7 @@ import org.elasticsearch.ElasticSearchTimeoutException; import org.elasticsearch.action.ActionFuture; import org.elasticsearch.action.ActionListener; import org.elasticsearch.transport.TransportException; +import org.elasticsearch.util.TimeValue; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutionException; @@ -114,6 +115,10 @@ public class PlainActionFuture implements ActionFuture, ActionListener return actionGet(timeoutMillis, TimeUnit.MILLISECONDS); } + @Override public T actionGet(TimeValue timeout) throws ElasticSearchException { + return actionGet(timeout.millis(), TimeUnit.MILLISECONDS); + } + @Override public T actionGet(long timeout, TimeUnit unit) throws ElasticSearchException { try { return get(timeout, unit);