This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git


The following commit(s) were added to refs/heads/master by this push:
     new 118485f  Make the elasticsearch json object build to be a public 
method. (#2648)
118485f is described below

commit 118485fbb7ebd437ced9b1d263fd17cc84f4a61c
Author: 彭勇升 pengys <[email protected]>
AuthorDate: Fri May 10 12:43:17 2019 +0800

    Make the elasticsearch json object build to be a public method. (#2648)
---
 .../storage/plugin/elasticsearch/base/EsDAO.java   | 21 ++++++++++++-
 .../elasticsearch/base/HistoryDeleteEsDAO.java     |  7 ++---
 .../plugin/elasticsearch/base/MetricsEsDAO.java    | 35 +++-------------------
 .../plugin/elasticsearch/base/RecordEsDAO.java     | 19 ++----------
 .../plugin/elasticsearch/base/RegisterEsDAO.java   | 24 +++------------
 5 files changed, 33 insertions(+), 73 deletions(-)

diff --git 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/EsDAO.java
 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/EsDAO.java
index 2cd3789..bc22597 100644
--- 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/EsDAO.java
+++ 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/EsDAO.java
@@ -18,10 +18,14 @@
 
 package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.base;
 
+import java.io.IOException;
+import java.util.Map;
 import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
 import org.apache.skywalking.oap.server.core.query.sql.Where;
 import org.apache.skywalking.oap.server.core.storage.AbstractDAO;
+import org.apache.skywalking.oap.server.core.storage.type.StorageDataType;
 import 
org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
+import org.elasticsearch.common.xcontent.*;
 import org.elasticsearch.index.query.*;
 import org.elasticsearch.search.builder.SearchSourceBuilder;
 
@@ -34,7 +38,7 @@ public abstract class EsDAO extends 
AbstractDAO<ElasticSearchClient> {
         super(client);
     }
 
-    public final void queryBuild(SearchSourceBuilder sourceBuilder, Where 
where, long startTB, long endTB) {
+    protected final void queryBuild(SearchSourceBuilder sourceBuilder, Where 
where, long startTB, long endTB) {
         RangeQueryBuilder rangeQueryBuilder = 
QueryBuilders.rangeQuery(Metrics.TIME_BUCKET).gte(startTB).lte(endTB);
         if (where.getKeyValues().isEmpty()) {
             sourceBuilder.query(rangeQueryBuilder);
@@ -53,4 +57,19 @@ public abstract class EsDAO extends 
AbstractDAO<ElasticSearchClient> {
         }
         sourceBuilder.size(0);
     }
+
+    XContentBuilder map2builder(Map<String, Object> objectMap) throws 
IOException {
+        XContentBuilder builder = XContentFactory.jsonBuilder().startObject();
+        for (String key : objectMap.keySet()) {
+            Object value = objectMap.get(key);
+            if (value instanceof StorageDataType) {
+                builder.field(key, ((StorageDataType)value).toStorageData());
+            } else {
+                builder.field(key, value);
+            }
+        }
+        builder.endObject();
+
+        return builder;
+    }
 }
diff --git 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/HistoryDeleteEsDAO.java
 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/HistoryDeleteEsDAO.java
index ca7ccee..44c6fdd 100644
--- 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/HistoryDeleteEsDAO.java
+++ 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/HistoryDeleteEsDAO.java
@@ -18,13 +18,10 @@
 
 package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.base;
 
+import java.io.IOException;
 import org.apache.skywalking.oap.server.core.storage.IHistoryDeleteDAO;
 import 
org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-
+import org.slf4j.*;
 
 /**
  * @author peng-yongsheng
diff --git 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/MetricsEsDAO.java
 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/MetricsEsDAO.java
index 5095252..7693d57 100644
--- 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/MetricsEsDAO.java
+++ 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/MetricsEsDAO.java
@@ -19,27 +19,22 @@
 package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.base;
 
 import java.io.IOException;
-import java.util.Map;
 import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
 import org.apache.skywalking.oap.server.core.storage.*;
-import org.apache.skywalking.oap.server.core.storage.type.StorageDataType;
 import 
org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
 import org.elasticsearch.action.get.GetResponse;
 import org.elasticsearch.action.index.IndexRequest;
 import org.elasticsearch.action.update.UpdateRequest;
-import org.elasticsearch.common.xcontent.*;
-import org.slf4j.*;
+import org.elasticsearch.common.xcontent.XContentBuilder;
 
 /**
  * @author peng-yongsheng
  */
 public class MetricsEsDAO extends EsDAO implements IMetricsDAO<IndexRequest, 
UpdateRequest> {
 
-    private static final Logger logger = 
LoggerFactory.getLogger(MetricsEsDAO.class);
-
     private final StorageBuilder<Metrics> storageBuilder;
 
-    public MetricsEsDAO(ElasticSearchClient client, StorageBuilder<Metrics> 
storageBuilder) {
+    MetricsEsDAO(ElasticSearchClient client, StorageBuilder<Metrics> 
storageBuilder) {
         super(client);
         this.storageBuilder = storageBuilder;
     }
@@ -54,34 +49,12 @@ public class MetricsEsDAO extends EsDAO implements 
IMetricsDAO<IndexRequest, Upd
     }
 
     @Override public IndexRequest prepareBatchInsert(String modelName, Metrics 
metrics) throws IOException {
-        Map<String, Object> objectMap = storageBuilder.data2Map(metrics);
-
-        XContentBuilder builder = XContentFactory.jsonBuilder().startObject();
-        for (String key : objectMap.keySet()) {
-            Object value = objectMap.get(key);
-            if (value instanceof StorageDataType) {
-                builder.field(key, ((StorageDataType)value).toStorageData());
-            } else {
-                builder.field(key, value);
-            }
-        }
-        builder.endObject();
+        XContentBuilder builder = 
map2builder(storageBuilder.data2Map(metrics));
         return getClient().prepareInsert(modelName, metrics.id(), builder);
     }
 
     @Override public UpdateRequest prepareBatchUpdate(String modelName, 
Metrics metrics) throws IOException {
-        Map<String, Object> objectMap = storageBuilder.data2Map(metrics);
-
-        XContentBuilder builder = XContentFactory.jsonBuilder().startObject();
-        for (String key : objectMap.keySet()) {
-            Object value = objectMap.get(key);
-            if (value instanceof StorageDataType) {
-                builder.field(key, ((StorageDataType)value).toStorageData());
-            } else {
-                builder.field(key, value);
-            }
-        }
-        builder.endObject();
+        XContentBuilder builder = 
map2builder(storageBuilder.data2Map(metrics));
         return getClient().prepareUpdate(modelName, metrics.id(), builder);
     }
 }
diff --git 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RecordEsDAO.java
 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RecordEsDAO.java
index 4a1c1d4..f2fa26e 100644
--- 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RecordEsDAO.java
+++ 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RecordEsDAO.java
@@ -19,13 +19,11 @@
 package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.base;
 
 import java.io.IOException;
-import java.util.Map;
 import org.apache.skywalking.oap.server.core.analysis.record.Record;
 import org.apache.skywalking.oap.server.core.storage.*;
-import org.apache.skywalking.oap.server.core.storage.type.StorageDataType;
 import 
org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
 import org.elasticsearch.action.index.IndexRequest;
-import org.elasticsearch.common.xcontent.*;
+import org.elasticsearch.common.xcontent.XContentBuilder;
 
 /**
  * @author peng-yongsheng
@@ -34,24 +32,13 @@ public class RecordEsDAO extends EsDAO implements 
IRecordDAO<IndexRequest> {
 
     private final StorageBuilder<Record> storageBuilder;
 
-    public RecordEsDAO(ElasticSearchClient client, StorageBuilder<Record> 
storageBuilder) {
+    RecordEsDAO(ElasticSearchClient client, StorageBuilder<Record> 
storageBuilder) {
         super(client);
         this.storageBuilder = storageBuilder;
     }
 
     @Override public IndexRequest prepareBatchInsert(String modelName, Record 
record) throws IOException {
-        Map<String, Object> objectMap = storageBuilder.data2Map(record);
-
-        XContentBuilder builder = XContentFactory.jsonBuilder().startObject();
-        for (String key : objectMap.keySet()) {
-            Object value = objectMap.get(key);
-            if (value instanceof StorageDataType) {
-                builder.field(key, ((StorageDataType)value).toStorageData());
-            } else {
-                builder.field(key, value);
-            }
-        }
-        builder.endObject();
+        XContentBuilder builder = map2builder(storageBuilder.data2Map(record));
         return getClient().prepareInsert(modelName, record.id(), builder);
     }
 }
diff --git 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RegisterEsDAO.java
 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RegisterEsDAO.java
index 58f3a8d..c4bd289 100644
--- 
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RegisterEsDAO.java
+++ 
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/base/RegisterEsDAO.java
@@ -19,24 +19,20 @@
 package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.base;
 
 import java.io.IOException;
-import java.util.Map;
 import org.apache.skywalking.oap.server.core.register.RegisterSource;
 import org.apache.skywalking.oap.server.core.storage.*;
 import 
org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
 import org.elasticsearch.action.get.GetResponse;
-import org.elasticsearch.common.xcontent.*;
-import org.slf4j.*;
+import org.elasticsearch.common.xcontent.XContentBuilder;
 
 /**
  * @author peng-yongsheng
  */
 public class RegisterEsDAO extends EsDAO implements IRegisterDAO {
 
-    private static final Logger logger = 
LoggerFactory.getLogger(RegisterEsDAO.class);
-
     private final StorageBuilder<RegisterSource> storageBuilder;
 
-    public RegisterEsDAO(ElasticSearchClient client, 
StorageBuilder<RegisterSource> storageBuilder) {
+    RegisterEsDAO(ElasticSearchClient client, StorageBuilder<RegisterSource> 
storageBuilder) {
         super(client);
         this.storageBuilder = storageBuilder;
     }
@@ -51,24 +47,12 @@ public class RegisterEsDAO extends EsDAO implements 
IRegisterDAO {
     }
 
     @Override public void forceInsert(String modelName, RegisterSource source) 
throws IOException {
-        XContentBuilder builder = build(source);
+        XContentBuilder builder = map2builder(storageBuilder.data2Map(source));
         getClient().forceInsert(modelName, source.id(), builder);
     }
 
     @Override public void forceUpdate(String modelName, RegisterSource source) 
throws IOException {
-        XContentBuilder builder = build(source);
+        XContentBuilder builder = map2builder(storageBuilder.data2Map(source));
         getClient().forceUpdate(modelName, source.id(), builder);
     }
-
-    private XContentBuilder build(RegisterSource source) throws IOException {
-        Map<String, Object> objectMap = storageBuilder.data2Map(source);
-
-        XContentBuilder builder = XContentFactory.jsonBuilder().startObject();
-        for (String key : objectMap.keySet()) {
-            builder.field(key, objectMap.get(key));
-        }
-        builder.endObject();
-        
-        return builder;
-    }
 }

Reply via email to