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/incubator-skywalking-oal-tool.git


The following commit(s) were added to refs/heads/master by this push:
     new f9b1517  Make OAL Tool to match new oap core. CC @peng-yongsheng
f9b1517 is described below

commit f9b1517daa48325214a7f26130f76b65cc1d0c5f
Author: Wu Sheng <[email protected]>
AuthorDate: Tue Aug 14 21:45:20 2018 +0800

    Make OAL Tool to match new oap core. CC @peng-yongsheng
---
 .../apache/skywalking/oal/tool/output/FileGenerator.java   |  5 ++---
 .../apache/skywalking/oal/tool/parser/AnalysisResult.java  |  4 ----
 .../apache/skywalking/oal/tool/parser/DeepAnalysis.java    | 11 +----------
 .../oap/server/core/analysis/indicator/AvgIndicator.java   |  3 ++-
 .../annotation/{IndicatorType.java => Expression.java}     | 12 ++++--------
 .../annotation/{IndicatorType.java => ExpressionArg1.java} | 12 ++++--------
 .../annotation/{IndicatorType.java => ExpressionArg2.java} | 12 ++++--------
 .../{IndicatorType.java => IndicatorOperator.java}         |  6 +-----
 .../core/analysis/indicator/annotation/IndicatorType.java  |  4 ----
 .../oap/server/core/annotation/AnnotationListener.java}    | 14 ++++++++++++--
 .../code-templates/EndpointDispatcherTemplate.ftl          | 13 +++++++------
 .../main/resources/code-templates/IndicatorImplementor.ftl |  7 ++-----
 .../resources/code-templates/ServiceDispatcherTemplate.ftl |  9 +++++----
 .../skywalking/oal/tool/output/FileGeneratorTest.java      |  3 ---
 .../skywalking/oal/tool/parser/DeepAnalysisTest.java       |  4 ----
 .../expectedFiles/IndicatorImplementorExpected.java        |  7 ++-----
 .../resources/expectedFiles/ServiceDispatcherExpected.java |  7 +++----
 oal-parser/src/test/resources/oal_test.oal                 |  2 +-
 18 files changed, 50 insertions(+), 85 deletions(-)

diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oal/tool/output/FileGenerator.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oal/tool/output/FileGenerator.java
index 2baed7a..722f716 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oal/tool/output/FileGenerator.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oal/tool/output/FileGenerator.java
@@ -83,7 +83,6 @@ public class FileGenerator {
     private String buildSubFolderName(AnalysisResult result, String suffix) {
         return "generated/"
             + result.getSourceName().toLowerCase() + "/"
-            + result.getMetricName().toLowerCase() + "/"
             + result.getMetricName() + suffix;
     }
 
@@ -107,10 +106,10 @@ public class FileGenerator {
                 case "Service":
                     dispatcherContext.getServiceIndicators().add(result);
                     break;
-                case "Endpoint":
+                case "ServiceInstance":
                     
dispatcherContext.getServiceInstanceIndicators().add(result);
                     break;
-                case "ServiceInstance":
+                case "Endpoint":
                     dispatcherContext.getEndpointIndicators().add(result);
                     break;
                 default:
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
index f800eed..8c419fe 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
@@ -42,10 +42,6 @@ public class AnalysisResult {
 
     private String indicatorClassName;
 
-    private Selector remoteSelector;
-
-    private boolean needMerge;
-
     private EntryMethod entryMethod;
 
     private List<DataColumn> persistentFields;
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
index c47ffd2..2407327 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
@@ -28,25 +28,16 @@ import org.apache.skywalking.oap.server.core.Indicators;
 import org.apache.skywalking.oap.server.core.analysis.indicator.Indicator;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.ConstOne;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.Entrance;
-import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.IndicatorType;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.SourceFrom;
 import org.apache.skywalking.oap.server.core.storage.annotation.Column;
 
 public class DeepAnalysis {
     public AnalysisResult analysis(AnalysisResult result) {
         // 1. Set sub package name by source.metric
-        result.setPackageName(result.getSourceName().toLowerCase() + "." + 
result.getMetricName().toLowerCase());
+        result.setPackageName(result.getSourceName().toLowerCase());
 
         Class<? extends Indicator> indicatorClass = 
Indicators.find(result.getAggregationFunctionName());
 
-        // 2. based on class annotation, find selector and merge requirement
-        IndicatorType indicatorClassAnnotation = 
indicatorClass.getAnnotation(IndicatorType.class);
-        if (indicatorClassAnnotation == null) {
-            throw new IllegalArgumentException("Can't find IndicatorType in 
class: " + indicatorClass.getName());
-        }
-        result.setIndicatorClassName(indicatorClass.getSimpleName());
-        result.setRemoteSelector(indicatorClassAnnotation.selector());
-        result.setNeedMerge(indicatorClassAnnotation.needMerge());
 
         // 3. Find Entrance method of this indicator
         Class c = indicatorClass;
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/AvgIndicator.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/AvgIndicator.java
index be47d80..27027f6 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/AvgIndicator.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/AvgIndicator.java
@@ -22,6 +22,7 @@ import lombok.Getter;
 import lombok.Setter;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.ConstOne;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.Entrance;
+import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.IndicatorOperator;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.IndicatorType;
 import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.SourceFrom;
 import org.apache.skywalking.oap.server.core.remote.selector.Selector;
@@ -30,7 +31,7 @@ import 
org.apache.skywalking.oap.server.core.storage.annotation.Column;
 /**
  * @author peng-yongsheng
  */
-@IndicatorType(selector = Selector.HashCode, needMerge = true)
+@IndicatorOperator
 public abstract class AvgIndicator extends Indicator {
 
     protected static final String SUMMATION = "summation";
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/Expression.java
similarity index 81%
copy from 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
copy to 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/Expression.java
index bfb07fe..9662fcb 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/Expression.java
@@ -22,15 +22,11 @@ import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
-import org.apache.skywalking.oap.server.core.remote.selector.Selector;
 
 /**
- * @author peng-yongsheng
+ * @author wusheng
  */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface IndicatorType {
-    Selector selector();
-
-    boolean needMerge();
+@Target(ElementType.PARAMETER)
+@Retention(RetentionPolicy.SOURCE)
+public @interface Expression {
 }
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/ExpressionArg1.java
similarity index 81%
copy from 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
copy to 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/ExpressionArg1.java
index bfb07fe..600f06e 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/ExpressionArg1.java
@@ -22,15 +22,11 @@ import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
-import org.apache.skywalking.oap.server.core.remote.selector.Selector;
 
 /**
- * @author peng-yongsheng
+ * @author wusheng
  */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface IndicatorType {
-    Selector selector();
-
-    boolean needMerge();
+@Target(ElementType.PARAMETER)
+@Retention(RetentionPolicy.SOURCE)
+public @interface ExpressionArg1 {
 }
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/ExpressionArg2.java
similarity index 81%
copy from 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
copy to 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/ExpressionArg2.java
index bfb07fe..76943a1 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/ExpressionArg2.java
@@ -22,15 +22,11 @@ import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
-import org.apache.skywalking.oap.server.core.remote.selector.Selector;
 
 /**
- * @author peng-yongsheng
+ * @author wusheng
  */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface IndicatorType {
-    Selector selector();
-
-    boolean needMerge();
+@Target(ElementType.PARAMETER)
+@Retention(RetentionPolicy.SOURCE)
+public @interface ExpressionArg2 {
 }
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorOperator.java
similarity index 88%
copy from 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
copy to 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorOperator.java
index bfb07fe..78739b9 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorOperator.java
@@ -22,15 +22,11 @@ import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
-import org.apache.skywalking.oap.server.core.remote.selector.Selector;
 
 /**
  * @author peng-yongsheng
  */
 @Target(ElementType.TYPE)
 @Retention(RetentionPolicy.RUNTIME)
-public @interface IndicatorType {
-    Selector selector();
-
-    boolean needMerge();
+public @interface IndicatorOperator {
 }
diff --git 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
index bfb07fe..5e87887 100644
--- 
a/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/annotation/IndicatorType.java
@@ -22,7 +22,6 @@ import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
-import org.apache.skywalking.oap.server.core.remote.selector.Selector;
 
 /**
  * @author peng-yongsheng
@@ -30,7 +29,4 @@ import 
org.apache.skywalking.oap.server.core.remote.selector.Selector;
 @Target(ElementType.TYPE)
 @Retention(RetentionPolicy.RUNTIME)
 public @interface IndicatorType {
-    Selector selector();
-
-    boolean needMerge();
 }
diff --git a/oal-parser/src/test/resources/oal_test.oal 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/annotation/AnnotationListener.java
similarity index 76%
copy from oal-parser/src/test/resources/oal_test.oal
copy to 
oal-parser/src/main/java/org/apache/skywalking/oap/server/core/annotation/AnnotationListener.java
index 513d9d9..a64db31 100644
--- a/oal-parser/src/test/resources/oal_test.oal
+++ 
b/oal-parser/src/main/java/org/apache/skywalking/oap/server/core/annotation/AnnotationListener.java
@@ -16,6 +16,16 @@
  *
  */
 
-Service_Avg = from(Service.latency).avg();
+package org.apache.skywalking.oap.server.core.annotation;
 
-endpoint_Avg = from(Endpoint.latency).avg();
\ No newline at end of file
+import java.lang.annotation.Annotation;
+
+/**
+ * @author peng-yongsheng
+ */
+public interface AnnotationListener {
+
+    Class<? extends Annotation> annotation();
+
+    void notify(Class aClass);
+}
diff --git 
a/oal-parser/src/main/resources/code-templates/EndpointDispatcherTemplate.ftl 
b/oal-parser/src/main/resources/code-templates/EndpointDispatcherTemplate.ftl
index 03c9aae..ce18bbf 100644
--- 
a/oal-parser/src/main/resources/code-templates/EndpointDispatcherTemplate.ftl
+++ 
b/oal-parser/src/main/resources/code-templates/EndpointDispatcherTemplate.ftl
@@ -16,10 +16,12 @@
  *
  */
 
-package org.apache.skywalking.oap.server.core.analysis.generated;
+package org.apache.skywalking.oap.server.core.analysis.generated.endpoint;
 
 import org.apache.skywalking.oap.server.core.analysis.SourceDispatcher;
+<#if (endpointIndicators?size>0) >
 import org.apache.skywalking.oap.server.core.analysis.worker.IndicatorProcess;
+</#if>
 import org.apache.skywalking.oap.server.core.source.Endpoint;
 
 /**
@@ -30,22 +32,21 @@ import 
org.apache.skywalking.oap.server.core.source.Endpoint;
 public class EndpointDispatcher implements SourceDispatcher<Endpoint> {
 
 
-    @Override public void dispatch(Service source) {
+    @Override public void dispatch(Endpoint source) {
 <#list endpointIndicators as indicator>
         do${indicator.metricName}(source);
 </#list>
     }
 
 <#list endpointIndicators as indicator>
-    private void do${indicator.metricName}(Service source) {
+    private void do${indicator.metricName}(Endpoint source) {
         ${indicator.metricName}Indicator indicator = new 
${indicator.metricName}Indicator();
 
         indicator.setTimeBucket(source.getTimeBucket());
     <#list indicator.fieldsFromSource as field>
-        indicator.${field.fieldSetter}(source.${field.fieldGetter}())
+        indicator.${field.fieldSetter}(source.${field.fieldGetter}());
     </#list>
-        indicator.${indicator.entryMethod.methodName}(
-    <#list indicator.entryMethod.argsExpressions as arg>${arg}<#if 
arg_has_next>, </#if></#list>);
+        indicator.${indicator.entryMethod.methodName}(<#list 
indicator.entryMethod.argsExpressions as arg>${arg}<#if arg_has_next>, 
</#if></#list>);
         IndicatorProcess.INSTANCE.in(indicator);
     }
 </#list>
diff --git 
a/oal-parser/src/main/resources/code-templates/IndicatorImplementor.ftl 
b/oal-parser/src/main/resources/code-templates/IndicatorImplementor.ftl
index e38d7c4..db109b4 100644
--- a/oal-parser/src/main/resources/code-templates/IndicatorImplementor.ftl
+++ b/oal-parser/src/main/resources/code-templates/IndicatorImplementor.ftl
@@ -25,6 +25,7 @@ import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.Indic
 import org.apache.skywalking.oap.server.core.remote.annotation.StreamData;
 import org.apache.skywalking.oap.server.core.remote.grpc.proto.RemoteData;
 import org.apache.skywalking.oap.server.core.storage.annotation.*;
+import org.apache.skywalking.oap.server.core.storage.StorageBuilder;
 
 /**
  * This class is auto generated. Please don't change this class manually.
@@ -40,10 +41,6 @@ public class ${metricName}Indicator extends 
${indicatorClassName} {
     @Setter @Getter @Column(columnName = "${sourceField.columnName}") private 
${sourceField.typeName} ${sourceField.fieldName};
 </#list>
 
-    @Override public String name() {
-        return "${tableName}";
-    }
-
     @Override public String id() {
         return String.valueOf(id);
     }
@@ -121,7 +118,7 @@ public class ${metricName}Indicator extends 
${indicatorClassName} {
 </#list>
     }
 
-    static class Builder implements StorageBuilder<${metricName}Indicator> {
+    public static class Builder implements 
StorageBuilder<${metricName}Indicator> {
 
         @Override public Map<String, Object> data2Map(${metricName}Indicator 
storageData) {
             Map<String, Object> map = new HashMap<>();
diff --git 
a/oal-parser/src/main/resources/code-templates/ServiceDispatcherTemplate.ftl 
b/oal-parser/src/main/resources/code-templates/ServiceDispatcherTemplate.ftl
index 04b38ef..3dc7e21 100644
--- a/oal-parser/src/main/resources/code-templates/ServiceDispatcherTemplate.ftl
+++ b/oal-parser/src/main/resources/code-templates/ServiceDispatcherTemplate.ftl
@@ -16,10 +16,12 @@
  *
  */
 
-package org.apache.skywalking.oap.server.core.analysis.generated;
+package org.apache.skywalking.oap.server.core.analysis.generated.service;
 
 import org.apache.skywalking.oap.server.core.analysis.SourceDispatcher;
+<#if (serviceIndicators?size>0) >
 import org.apache.skywalking.oap.server.core.analysis.worker.IndicatorProcess;
+</#if>
 import org.apache.skywalking.oap.server.core.source.Service;
 
 /**
@@ -40,10 +42,9 @@ public class ServiceDispatcher implements 
SourceDispatcher<Service> {
 
         indicator.setTimeBucket(source.getTimeBucket());
     <#list indicator.fieldsFromSource as field>
-        indicator.${field.fieldSetter}(source.${field.fieldGetter}())
+        indicator.${field.fieldSetter}(source.${field.fieldGetter}());
     </#list>
-        indicator.${indicator.entryMethod.methodName}(
-            <#list indicator.entryMethod.argsExpressions as arg>${arg}<#if 
arg_has_next>, </#if></#list>);
+        indicator.${indicator.entryMethod.methodName}(<#list 
indicator.entryMethod.argsExpressions as arg>${arg}<#if arg_has_next>, 
</#if></#list>);
         avgAggregator.in(indicator);
     }
 </#list>
diff --git 
a/oal-parser/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
 
b/oal-parser/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
index 1320e3e..9b3a62a 100644
--- 
a/oal-parser/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
+++ 
b/oal-parser/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
@@ -28,7 +28,6 @@ import java.util.List;
 import org.apache.skywalking.oal.tool.parser.AnalysisResult;
 import org.apache.skywalking.oal.tool.parser.EntryMethod;
 import org.apache.skywalking.oal.tool.parser.SourceColumnsFactory;
-import org.apache.skywalking.oap.server.core.remote.selector.Selector;
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -41,8 +40,6 @@ public class FileGeneratorTest {
         result.setSourceAttribute("latency");
         result.setMetricName("ServiceAvg");
         result.setAggregationFunctionName("avg");
-        result.setRemoteSelector(Selector.HashCode);
-        result.setNeedMerge(true);
         result.setIndicatorClassName("AvgIndicator");
         EntryMethod method = new EntryMethod();
         method.setMethodName("combine");
diff --git 
a/oal-parser/src/test/java/org/apache/skywalking/oal/tool/parser/DeepAnalysisTest.java
 
b/oal-parser/src/test/java/org/apache/skywalking/oal/tool/parser/DeepAnalysisTest.java
index 1062aa0..90d5b87 100644
--- 
a/oal-parser/src/test/java/org/apache/skywalking/oal/tool/parser/DeepAnalysisTest.java
+++ 
b/oal-parser/src/test/java/org/apache/skywalking/oal/tool/parser/DeepAnalysisTest.java
@@ -36,8 +36,6 @@ public class DeepAnalysisTest {
         DeepAnalysis analysis = new DeepAnalysis();
         result = analysis.analysis(result);
 
-        Assert.assertEquals(Selector.HashCode, result.getRemoteSelector());
-        Assert.assertEquals(true, result.isNeedMerge());
         EntryMethod method = result.getEntryMethod();
         Assert.assertEquals("combine", method.getMethodName());
         Assert.assertEquals("source.getLatency()", 
method.getArgsExpressions().get(0));
@@ -62,8 +60,6 @@ public class DeepAnalysisTest {
         DeepAnalysis analysis = new DeepAnalysis();
         result = analysis.analysis(result);
 
-        Assert.assertEquals(Selector.HashCode, result.getRemoteSelector());
-        Assert.assertEquals(true, result.isNeedMerge());
         EntryMethod method = result.getEntryMethod();
         Assert.assertEquals("combine", method.getMethodName());
         Assert.assertEquals("source.getLatency()", 
method.getArgsExpressions().get(0));
diff --git 
a/oal-parser/src/test/resources/expectedFiles/IndicatorImplementorExpected.java 
b/oal-parser/src/test/resources/expectedFiles/IndicatorImplementorExpected.java
index a6feedc..d9ff395 100644
--- 
a/oal-parser/src/test/resources/expectedFiles/IndicatorImplementorExpected.java
+++ 
b/oal-parser/src/test/resources/expectedFiles/IndicatorImplementorExpected.java
@@ -25,6 +25,7 @@ import 
org.apache.skywalking.oap.server.core.analysis.indicator.annotation.Indic
 import org.apache.skywalking.oap.server.core.remote.annotation.StreamData;
 import org.apache.skywalking.oap.server.core.remote.grpc.proto.RemoteData;
 import org.apache.skywalking.oap.server.core.storage.annotation.*;
+import org.apache.skywalking.oap.server.core.storage.StorageBuilder;
 
 /**
  * This class is auto generated. Please don't change this class manually.
@@ -38,10 +39,6 @@ public class ServiceAvgIndicator extends AvgIndicator {
 
     @Setter @Getter @Column(columnName = "id") private int id;
 
-    @Override public String name() {
-        return "service_avg";
-    }
-
     @Override public String id() {
         return String.valueOf(id);
     }
@@ -97,7 +94,7 @@ public class ServiceAvgIndicator extends AvgIndicator {
         setCount(remoteData.getDataIntegers(1));
     }
 
-    static class Builder implements StorageBuilder<ServiceAvgIndicator> {
+    public static class Builder implements StorageBuilder<ServiceAvgIndicator> 
{
 
         @Override public Map<String, Object> data2Map(ServiceAvgIndicator 
storageData) {
             Map<String, Object> map = new HashMap<>();
diff --git 
a/oal-parser/src/test/resources/expectedFiles/ServiceDispatcherExpected.java 
b/oal-parser/src/test/resources/expectedFiles/ServiceDispatcherExpected.java
index a01492e..32fe003 100644
--- a/oal-parser/src/test/resources/expectedFiles/ServiceDispatcherExpected.java
+++ b/oal-parser/src/test/resources/expectedFiles/ServiceDispatcherExpected.java
@@ -16,7 +16,7 @@
  *
  */
 
-package org.apache.skywalking.oap.server.core.analysis.generated;
+package org.apache.skywalking.oap.server.core.analysis.generated.service;
 
 import org.apache.skywalking.oap.server.core.analysis.SourceDispatcher;
 import org.apache.skywalking.oap.server.core.analysis.worker.IndicatorProcess;
@@ -36,9 +36,8 @@ public class ServiceDispatcher implements 
SourceDispatcher<Service> {
         ServiceAvgIndicator indicator = new ServiceAvgIndicator();
 
         indicator.setTimeBucket(source.getTimeBucket());
-        indicator.setId(source.getId())
-        indicator.combine(
-            source.getLatency(), 1);
+        indicator.setId(source.getId());
+        indicator.combine(source.getLatency(), 1);
         avgAggregator.in(indicator);
     }
 }
diff --git a/oal-parser/src/test/resources/oal_test.oal 
b/oal-parser/src/test/resources/oal_test.oal
index 513d9d9..66ad3cc 100644
--- a/oal-parser/src/test/resources/oal_test.oal
+++ b/oal-parser/src/test/resources/oal_test.oal
@@ -16,6 +16,6 @@
  *
  */
 
-Service_Avg = from(Service.latency).avg();
+//Service_Avg = from(Service.latency).avg();
 
 endpoint_Avg = from(Endpoint.latency).avg();
\ No newline at end of file

Reply via email to