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

wusheng pushed a commit to branch real-metric-script
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git


The following commit(s) were added to refs/heads/real-metric-script by this 
push:
     new 78b7d38  Support cpm and new indicators.
78b7d38 is described below

commit 78b7d38a052d46732f94e9f10797c42283644f09
Author: Wu Sheng <[email protected]>
AuthorDate: Sun Sep 16 23:18:52 2018 +0800

    Support cpm and new indicators.
---
 .../EndpointRelationCpmIndicator.java              | 11 +++-
 .../generated/service/ServiceCpmIndicator.java     | 11 +++-
 .../ServiceInstanceCpmIndicator.java               | 11 +++-
 .../ServiceRelationClientCpmIndicator.java         | 11 +++-
 .../ServiceRelationServerCpmIndicator.java         | 11 +++-
 .../core/analysis/indicator/CPMIndicator.java      |  8 +--
 .../server/core/analysis/indicator/Indicator.java  | 60 +++++++++++++++++-----
 7 files changed, 96 insertions(+), 27 deletions(-)

diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/endpointrelation/EndpointRelationCpmIndicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/endpointrelation/EndpointRelationCpmIndicator.java
index 0b9e95a..be083fc 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/endpointrelation/EndpointRelationCpmIndicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/endpointrelation/EndpointRelationCpmIndicator.java
@@ -90,7 +90,8 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
         remoteBuilder.setDataStrings(0, getEntityId());
 
         remoteBuilder.setDataLongs(0, getValue());
-        remoteBuilder.setDataLongs(1, getTimeBucket());
+        remoteBuilder.setDataLongs(1, getTotal());
+        remoteBuilder.setDataLongs(2, getTimeBucket());
 
 
         remoteBuilder.setDataIntegers(0, getServiceId());
@@ -105,7 +106,8 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
         setEntityId(remoteData.getDataStrings(0));
 
         setValue(remoteData.getDataLongs(0));
-        setTimeBucket(remoteData.getDataLongs(1));
+        setTotal(remoteData.getDataLongs(1));
+        setTimeBucket(remoteData.getDataLongs(2));
 
 
         setServiceId(remoteData.getDataIntegers(0));
@@ -130,6 +132,7 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
         indicator.setServiceInstanceId(this.getServiceInstanceId());
         indicator.setChildServiceInstanceId(this.getChildServiceInstanceId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -144,6 +147,7 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
         indicator.setServiceInstanceId(this.getServiceInstanceId());
         indicator.setChildServiceInstanceId(this.getChildServiceInstanceId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -158,6 +162,7 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
         indicator.setServiceInstanceId(this.getServiceInstanceId());
         indicator.setChildServiceInstanceId(this.getChildServiceInstanceId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -172,6 +177,7 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
             map.put("service_instance_id", storageData.getServiceInstanceId());
             map.put("child_service_instance_id", 
storageData.getChildServiceInstanceId());
             map.put("value", storageData.getValue());
+            map.put("total", storageData.getTotal());
             map.put("time_bucket", storageData.getTimeBucket());
             return map;
         }
@@ -184,6 +190,7 @@ public class EndpointRelationCpmIndicator extends 
CPMIndicator implements AlarmS
             
indicator.setServiceInstanceId(((Number)dbMap.get("service_instance_id")).intValue());
             
indicator.setChildServiceInstanceId(((Number)dbMap.get("child_service_instance_id")).intValue());
             indicator.setValue(((Number)dbMap.get("value")).longValue());
+            indicator.setTotal(((Number)dbMap.get("total")).longValue());
             
indicator.setTimeBucket(((Number)dbMap.get("time_bucket")).longValue());
             return indicator;
         }
diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/service/ServiceCpmIndicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/service/ServiceCpmIndicator.java
index d43da1c..c0619e1 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/service/ServiceCpmIndicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/service/ServiceCpmIndicator.java
@@ -86,7 +86,8 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
         remoteBuilder.setDataStrings(0, getEntityId());
 
         remoteBuilder.setDataLongs(0, getValue());
-        remoteBuilder.setDataLongs(1, getTimeBucket());
+        remoteBuilder.setDataLongs(1, getTotal());
+        remoteBuilder.setDataLongs(2, getTimeBucket());
 
 
 
@@ -97,7 +98,8 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
         setEntityId(remoteData.getDataStrings(0));
 
         setValue(remoteData.getDataLongs(0));
-        setTimeBucket(remoteData.getDataLongs(1));
+        setTotal(remoteData.getDataLongs(1));
+        setTimeBucket(remoteData.getDataLongs(2));
 
 
 
@@ -114,6 +116,7 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
         indicator.setTimeBucket(toTimeBucketInHour());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -124,6 +127,7 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
         indicator.setTimeBucket(toTimeBucketInDay());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -134,6 +138,7 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
         indicator.setTimeBucket(toTimeBucketInMonth());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -144,6 +149,7 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
             Map<String, Object> map = new HashMap<>();
             map.put("entity_id", storageData.getEntityId());
             map.put("value", storageData.getValue());
+            map.put("total", storageData.getTotal());
             map.put("time_bucket", storageData.getTimeBucket());
             return map;
         }
@@ -152,6 +158,7 @@ public class ServiceCpmIndicator extends CPMIndicator 
implements AlarmSupported
             ServiceCpmIndicator indicator = new ServiceCpmIndicator();
             indicator.setEntityId((String)dbMap.get("entity_id"));
             indicator.setValue(((Number)dbMap.get("value")).longValue());
+            indicator.setTotal(((Number)dbMap.get("total")).longValue());
             
indicator.setTimeBucket(((Number)dbMap.get("time_bucket")).longValue());
             return indicator;
         }
diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/serviceinstance/ServiceInstanceCpmIndicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/serviceinstance/ServiceInstanceCpmIndicator.java
index 5203199..0949ea0 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/serviceinstance/ServiceInstanceCpmIndicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/serviceinstance/ServiceInstanceCpmIndicator.java
@@ -87,7 +87,8 @@ public class ServiceInstanceCpmIndicator extends CPMIndicator 
implements AlarmSu
         remoteBuilder.setDataStrings(0, getEntityId());
 
         remoteBuilder.setDataLongs(0, getValue());
-        remoteBuilder.setDataLongs(1, getTimeBucket());
+        remoteBuilder.setDataLongs(1, getTotal());
+        remoteBuilder.setDataLongs(2, getTimeBucket());
 
 
         remoteBuilder.setDataIntegers(0, getServiceId());
@@ -99,7 +100,8 @@ public class ServiceInstanceCpmIndicator extends 
CPMIndicator implements AlarmSu
         setEntityId(remoteData.getDataStrings(0));
 
         setValue(remoteData.getDataLongs(0));
-        setTimeBucket(remoteData.getDataLongs(1));
+        setTotal(remoteData.getDataLongs(1));
+        setTimeBucket(remoteData.getDataLongs(2));
 
 
         setServiceId(remoteData.getDataIntegers(0));
@@ -118,6 +120,7 @@ public class ServiceInstanceCpmIndicator extends 
CPMIndicator implements AlarmSu
         indicator.setEntityId(this.getEntityId());
         indicator.setServiceId(this.getServiceId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -129,6 +132,7 @@ public class ServiceInstanceCpmIndicator extends 
CPMIndicator implements AlarmSu
         indicator.setEntityId(this.getEntityId());
         indicator.setServiceId(this.getServiceId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -140,6 +144,7 @@ public class ServiceInstanceCpmIndicator extends 
CPMIndicator implements AlarmSu
         indicator.setEntityId(this.getEntityId());
         indicator.setServiceId(this.getServiceId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -151,6 +156,7 @@ public class ServiceInstanceCpmIndicator extends 
CPMIndicator implements AlarmSu
             map.put("entity_id", storageData.getEntityId());
             map.put("service_id", storageData.getServiceId());
             map.put("value", storageData.getValue());
+            map.put("total", storageData.getTotal());
             map.put("time_bucket", storageData.getTimeBucket());
             return map;
         }
@@ -160,6 +166,7 @@ public class ServiceInstanceCpmIndicator extends 
CPMIndicator implements AlarmSu
             indicator.setEntityId((String)dbMap.get("entity_id"));
             
indicator.setServiceId(((Number)dbMap.get("service_id")).intValue());
             indicator.setValue(((Number)dbMap.get("value")).longValue());
+            indicator.setTotal(((Number)dbMap.get("total")).longValue());
             
indicator.setTimeBucket(((Number)dbMap.get("time_bucket")).longValue());
             return indicator;
         }
diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationClientCpmIndicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationClientCpmIndicator.java
index e583f42..281e936 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationClientCpmIndicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationClientCpmIndicator.java
@@ -86,7 +86,8 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
         remoteBuilder.setDataStrings(0, getEntityId());
 
         remoteBuilder.setDataLongs(0, getValue());
-        remoteBuilder.setDataLongs(1, getTimeBucket());
+        remoteBuilder.setDataLongs(1, getTotal());
+        remoteBuilder.setDataLongs(2, getTimeBucket());
 
 
 
@@ -97,7 +98,8 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
         setEntityId(remoteData.getDataStrings(0));
 
         setValue(remoteData.getDataLongs(0));
-        setTimeBucket(remoteData.getDataLongs(1));
+        setTotal(remoteData.getDataLongs(1));
+        setTimeBucket(remoteData.getDataLongs(2));
 
 
 
@@ -114,6 +116,7 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
         indicator.setTimeBucket(toTimeBucketInHour());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -124,6 +127,7 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
         indicator.setTimeBucket(toTimeBucketInDay());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -134,6 +138,7 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
         indicator.setTimeBucket(toTimeBucketInMonth());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -144,6 +149,7 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
             Map<String, Object> map = new HashMap<>();
             map.put("source_service_id", storageData.getEntityId());
             map.put("value", storageData.getValue());
+            map.put("total", storageData.getTotal());
             map.put("time_bucket", storageData.getTimeBucket());
             return map;
         }
@@ -152,6 +158,7 @@ public class ServiceRelationClientCpmIndicator extends 
CPMIndicator implements A
             ServiceRelationClientCpmIndicator indicator = new 
ServiceRelationClientCpmIndicator();
             indicator.setEntityId((String)dbMap.get("source_service_id"));
             indicator.setValue(((Number)dbMap.get("value")).longValue());
+            indicator.setTotal(((Number)dbMap.get("total")).longValue());
             
indicator.setTimeBucket(((Number)dbMap.get("time_bucket")).longValue());
             return indicator;
         }
diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationServerCpmIndicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationServerCpmIndicator.java
index 20b2a2d..17763ab 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationServerCpmIndicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/generated/servicerelation/ServiceRelationServerCpmIndicator.java
@@ -86,7 +86,8 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
         remoteBuilder.setDataStrings(0, getEntityId());
 
         remoteBuilder.setDataLongs(0, getValue());
-        remoteBuilder.setDataLongs(1, getTimeBucket());
+        remoteBuilder.setDataLongs(1, getTotal());
+        remoteBuilder.setDataLongs(2, getTimeBucket());
 
 
 
@@ -97,7 +98,8 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
         setEntityId(remoteData.getDataStrings(0));
 
         setValue(remoteData.getDataLongs(0));
-        setTimeBucket(remoteData.getDataLongs(1));
+        setTotal(remoteData.getDataLongs(1));
+        setTimeBucket(remoteData.getDataLongs(2));
 
 
 
@@ -114,6 +116,7 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
         indicator.setTimeBucket(toTimeBucketInHour());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -124,6 +127,7 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
         indicator.setTimeBucket(toTimeBucketInDay());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -134,6 +138,7 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
         indicator.setTimeBucket(toTimeBucketInMonth());
         indicator.setEntityId(this.getEntityId());
         indicator.setValue(this.getValue());
+        indicator.setTotal(this.getTotal());
         indicator.setTimeBucket(this.getTimeBucket());
         return indicator;
     }
@@ -144,6 +149,7 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
             Map<String, Object> map = new HashMap<>();
             map.put("source_service_id", storageData.getEntityId());
             map.put("value", storageData.getValue());
+            map.put("total", storageData.getTotal());
             map.put("time_bucket", storageData.getTimeBucket());
             return map;
         }
@@ -152,6 +158,7 @@ public class ServiceRelationServerCpmIndicator extends 
CPMIndicator implements A
             ServiceRelationServerCpmIndicator indicator = new 
ServiceRelationServerCpmIndicator();
             indicator.setEntityId((String)dbMap.get("source_service_id"));
             indicator.setValue(((Number)dbMap.get("value")).longValue());
+            indicator.setTotal(((Number)dbMap.get("total")).longValue());
             
indicator.setTimeBucket(((Number)dbMap.get("time_bucket")).longValue());
             return indicator;
         }
diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/CPMIndicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/CPMIndicator.java
index 8032f77..5b20370 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/CPMIndicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/CPMIndicator.java
@@ -32,21 +32,23 @@ import 
org.apache.skywalking.oap.server.core.storage.annotation.Column;
 public abstract class CPMIndicator extends Indicator implements 
LongValueHolder {
 
     protected static final String VALUE = "value";
+    protected static final String TOTAL = "total";
 
     @Getter @Setter @Column(columnName = VALUE) private long value;
+    @Getter @Setter @Column(columnName = TOTAL) private long total;
 
     @Entrance
     public final void combine(@ConstOne long count) {
-        this.value += count;
+        this.total += count;
     }
 
     @Override public final void combine(Indicator indicator) {
         CPMIndicator countIndicator = (CPMIndicator)indicator;
-        combine(countIndicator.value);
+        combine(countIndicator.total);
     }
 
     @Override public void calculate() {
-
+        this.value = total / getDurationInMinute();
     }
 
     @Override public long getValue() {
diff --git 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/Indicator.java
 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/Indicator.java
index 097a8ad..235d2a1 100644
--- 
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/Indicator.java
+++ 
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/Indicator.java
@@ -23,11 +23,14 @@ import lombok.Setter;
 import org.apache.skywalking.oap.server.core.remote.data.StreamData;
 import org.apache.skywalking.oap.server.core.storage.StorageData;
 import org.apache.skywalking.oap.server.core.storage.annotation.Column;
+import org.joda.time.format.DateTimeFormat;
+import org.joda.time.format.DateTimeFormatter;
 
 /**
  * @author peng-yongsheng
  */
 public abstract class Indicator extends StreamData implements StorageData {
+    private static DateTimeFormatter TIME_BUCKET_MONTH_FORMATTER = 
DateTimeFormat.forPattern("yyyyMM");
 
     public static final String TIME_BUCKET = "time_bucket";
     public static final String ENTITY_ID = "entity_id";
@@ -47,15 +50,7 @@ public abstract class Indicator extends StreamData 
implements StorageData {
     public abstract Indicator toMonth();
 
     public long toTimeBucketInHour() {
-        /**
-         * timeBucket in minute
-         *  201809120511
-         * min
-         *  100000000000
-         * max
-         *  999999999999
-         */
-        if (timeBucket < 999999999999L && timeBucket > 100000000000L) {
+        if (isMinuteBucket()) {
             return timeBucket / 100;
         } else {
             throw new IllegalStateException("Current time bucket is not in 
minute dimensionality");
@@ -63,9 +58,9 @@ public abstract class Indicator extends StreamData implements 
StorageData {
     }
 
     public long toTimeBucketInDay() {
-        if (timeBucket < 999999999999L && timeBucket > 100000000000L) {
+        if (isMinuteBucket()) {
             return timeBucket / 10000;
-        } else if (timeBucket < 9999999999L && timeBucket > 1000000000L) {
+        } else if (isHourBucket()) {
             return timeBucket / 100;
         } else {
             throw new IllegalStateException("Current time bucket is not in 
minute dimensionality");
@@ -73,14 +68,51 @@ public abstract class Indicator extends StreamData 
implements StorageData {
     }
 
     public long toTimeBucketInMonth() {
-        if (timeBucket < 999999999999L && timeBucket > 100000000000L) {
+        if (isMinuteBucket()) {
             return timeBucket / 1000000;
-        } else if (timeBucket < 9999999999L && timeBucket > 1000000000L) {
+        } else if (isHourBucket()) {
             return timeBucket / 10000;
-        } else if (timeBucket < 99999999L && timeBucket > 10000000L) {
+        } else if (isDayBucket()) {
             return timeBucket / 100;
         } else {
             throw new IllegalStateException("Current time bucket is not in 
minute dimensionality");
         }
     }
+
+    /**
+     * Always get the duration for this time bucket in minute.
+     *
+     * @return minutes.
+     */
+    protected long getDurationInMinute() {
+        if (isMinuteBucket()) {
+            return 1;
+        } else if (isHourBucket()) {
+            return 60;
+        } else if (isDayBucket()) {
+            return 24 * 60;
+        } else {
+            /**
+             * In month time bucket status.
+             * Usually after {@link #toTimeBucketInMonth()} called.
+             */
+            int dayOfMonth = 
TIME_BUCKET_MONTH_FORMATTER.parseLocalDate(timeBucket + "").getDayOfMonth();
+            return dayOfMonth * 24 * 60;
+        }
+    }
+
+    /**
+     * timeBucket in minute 201809120511 min 100000000000 max 999999999999
+     */
+    private boolean isMinuteBucket() {
+        return timeBucket < 999999999999L && timeBucket > 100000000000L;
+    }
+
+    private boolean isHourBucket() {
+        return timeBucket < 9999999999L && timeBucket > 1000000000L;
+    }
+
+    private boolean isDayBucket() {
+        return timeBucket < 99999999L && timeBucket > 10000000L;
+    }
 }

Reply via email to