You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2015/10/06 11:26:49 UTC
camel git commit: CAMEL-9194 ElasticsearchActionRequestConverter
should support more than just map object for the SearchRequest
Repository: camel
Updated Branches:
refs/heads/master c216b4f9f -> ad4b82aff
CAMEL-9194 ElasticsearchActionRequestConverter should support more than just map object for the SearchRequest
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/ad4b82af
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/ad4b82af
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/ad4b82af
Branch: refs/heads/master
Commit: ad4b82aff1614ffd3cff09ee73cbc83e7d8d8088
Parents: c216b4f
Author: Willem Jiang <wi...@gmail.com>
Authored: Tue Oct 6 17:26:32 2015 +0800
Committer: Willem Jiang <wi...@gmail.com>
Committed: Tue Oct 6 17:26:32 2015 +0800
----------------------------------------------------------------------
.../ElasticsearchActionRequestConverter.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/ad4b82af/components/camel-elasticsearch/src/main/java/org/apache/camel/component/elasticsearch/converter/ElasticsearchActionRequestConverter.java
----------------------------------------------------------------------
diff --git a/components/camel-elasticsearch/src/main/java/org/apache/camel/component/elasticsearch/converter/ElasticsearchActionRequestConverter.java b/components/camel-elasticsearch/src/main/java/org/apache/camel/component/elasticsearch/converter/ElasticsearchActionRequestConverter.java
index b19c951..3a804f5 100644
--- a/components/camel-elasticsearch/src/main/java/org/apache/camel/component/elasticsearch/converter/ElasticsearchActionRequestConverter.java
+++ b/components/camel-elasticsearch/src/main/java/org/apache/camel/component/elasticsearch/converter/ElasticsearchActionRequestConverter.java
@@ -91,12 +91,23 @@ public final class ElasticsearchActionRequestConverter {
@Converter
public static SearchRequest toSearchRequest(Object queryObject, Exchange exchange) {
- Map<?, ?> query = exchange.getContext().getTypeConverter().convertTo(Map.class, queryObject);
- return new SearchRequest(exchange.getIn().getHeader(
- ElasticsearchConstants.PARAM_INDEX_NAME, String.class))
- .types(exchange.getIn().getHeader(
- ElasticsearchConstants.PARAM_INDEX_TYPE,
- String.class)).source(query);
+ SearchRequest searchRequest = new SearchRequest(exchange.getIn()
+ .getHeader(ElasticsearchConstants.PARAM_INDEX_NAME, String.class))
+ .types(exchange.getIn().getHeader(ElasticsearchConstants.PARAM_INDEX_TYPE, String.class));
+ // Setup the query object into the search request
+ if (queryObject instanceof byte[]) {
+ searchRequest.source((byte[]) queryObject);
+ } else if (queryObject instanceof Map) {
+ searchRequest.source((Map<String, Object>) queryObject);
+ } else if (queryObject instanceof String) {
+ searchRequest.source((String) queryObject);
+ } else if (queryObject instanceof XContentBuilder) {
+ searchRequest.source((XContentBuilder) queryObject);
+ } else {
+ // Cannot convert the queryObject into SearchRequest
+ return null;
+ }
+ return searchRequest;
}
@Converter