Skip to content

Commit eda7037

Browse files
authored
Java: Avoid to generate duplicate classes with the same name (#825)
* Avoid to generate duplicate classes with the same name * Update example * Update tests
1 parent fb70aca commit eda7037

File tree

8 files changed

+33
-33
lines changed

8 files changed

+33
-33
lines changed

examples/java/src/main/java/test/Common.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
import com.grafana.foundation.common.VizLegendOptionsBuilder;
1414
import com.grafana.foundation.common.VizOrientation;
1515
import com.grafana.foundation.dashboard.DataSourceRef;
16-
import com.grafana.foundation.gauge.GaugeBuilder;
17-
import com.grafana.foundation.logs.LogsBuilder;
16+
import com.grafana.foundation.gauge.GaugePanelBuilder;
17+
import com.grafana.foundation.logs.LogsPanelBuilder;
1818
import com.grafana.foundation.prometheus.PromQueryFormat;
19-
import com.grafana.foundation.timeseries.TimeseriesBuilder;
19+
import com.grafana.foundation.timeseries.TimeseriesPanelBuilder;
2020

2121
public class Common {
2222

@@ -35,20 +35,20 @@ public static Builder<Dataquery> tablePrometheusQuery(String query, String ref)
3535
.legendFormat(PromQueryFormat.TABLE.Value()).refId(ref);
3636
}
3737

38-
public static TimeseriesBuilder defaultTimeSeries() {
39-
return new TimeseriesBuilder().lineWidth(1.0).fillOpacity(10.0).drawStyle(GraphDrawStyle.LINE)
38+
public static TimeseriesPanelBuilder defaultTimeSeries() {
39+
return new TimeseriesPanelBuilder().lineWidth(1.0).fillOpacity(10.0).drawStyle(GraphDrawStyle.LINE)
4040
.showPoints(VisibilityMode.NEVER).legend(new VizLegendOptionsBuilder().showLegend(true)
4141
.placement(LegendPlacement.BOTTOM).displayMode(LegendDisplayMode.LIST));
4242
}
4343

44-
public static LogsBuilder defaultLogs() {
45-
return new LogsBuilder().span(24)
44+
public static LogsPanelBuilder defaultLogs() {
45+
return new LogsPanelBuilder().span(24)
4646
.datasource(new DataSourceRef("loki", "grafana-cloud-logs")).showTime(true).enableLogDetails(true)
4747
.sortOrder(LogsSortOrder.DESCENDING).wrapLogMessage(true);
4848
}
4949

50-
public static GaugeBuilder defaultGauge() {
51-
return new GaugeBuilder().orientation(VizOrientation.AUTO)
50+
public static GaugePanelBuilder defaultGauge() {
51+
return new GaugePanelBuilder().orientation(VizOrientation.AUTO)
5252
.reduceOptions(new ReduceDataOptionsBuilder().calcs(List.of("lastNotNull")).values(false));
5353
}
5454
}

examples/java/src/main/java/test/Disk.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
import com.grafana.foundation.dashboard.DataTransformerConfig;
1313
import com.grafana.foundation.dashboard.DynamicConfigValue;
1414
import com.grafana.foundation.dashboard.MatcherConfig;
15-
import com.grafana.foundation.table.TableBuilder;
16-
import com.grafana.foundation.timeseries.TimeseriesBuilder;
15+
import com.grafana.foundation.table.TablePanelBuilder;
16+
import com.grafana.foundation.timeseries.TimeseriesPanelBuilder;
1717

1818
public class Disk {
19-
public static TimeseriesBuilder diskIOTimeseries() {
19+
public static TimeseriesPanelBuilder diskIOTimeseries() {
2020
return Common.defaultTimeSeries().title("Disk I/O").fillOpacity(0.0).unit("Bps")
2121
.withTarget(Common.basicPrometheusQuery(
2222
"rate(node_disk_read_bytes_total{job=\"integrations/raspberrypi-node\", instance=\"$instance\", device!=\"\"}[$__rate_interval])",
@@ -32,8 +32,8 @@ public static TimeseriesBuilder diskIOTimeseries() {
3232
));
3333
}
3434

35-
public static TableBuilder diskSpaceUsageTable() {
36-
return new TableBuilder().title("Disk Space Usage")
35+
public static TablePanelBuilder diskSpaceUsageTable() {
36+
return new TablePanelBuilder().title("Disk Space Usage")
3737
.align(FieldTextAlignment.AUTO).unit("decbytes").cellHeight(TableCellHeight.SM)
3838
.footer(new TableFooterOptionsBuilder().countRows(false).reducer(List.of("sum")))
3939
.withTarget(Common.tablePrometheusQuery(

examples/java/src/main/java/test/Logs.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
package test;
22

3-
import com.grafana.foundation.logs.LogsBuilder;
3+
import com.grafana.foundation.logs.LogsPanelBuilder;
44

55
public class Logs {
6-
public static LogsBuilder errorsInSystemLogs() {
6+
public static LogsPanelBuilder errorsInSystemLogs() {
77
return Common.defaultLogs().
88
title("Errors in system logs").
99
withTarget(Common.basicLokiQuery("{level=~\"err|crit|alert|emerg\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"}")).
1010
withTarget(Common.basicLokiQuery("{filename=~\"/var/log/syslog*|/var/log/messages*\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"} |~\".+(?i)error(?-i).+\""));
1111
}
12-
public static LogsBuilder authLogs() {
12+
public static LogsPanelBuilder authLogs() {
1313
return Common.defaultLogs().
1414
title("Auth logs").
1515
withTarget(Common.basicLokiQuery("{unit=\"ssh.service\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"}")).
1616
withTarget(Common.basicLokiQuery("{filename=~\"/var/log/auth.log|/var/log/secure\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"}"));
1717
}
18-
public static LogsBuilder kernelLogs() {
18+
public static LogsPanelBuilder kernelLogs() {
1919
return Common.defaultLogs().
2020
title("Kernel logs").
2121
withTarget(Common.basicLokiQuery("{transport=\"kernel\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"}")).
2222
withTarget(Common.basicLokiQuery("{filename=\"/var/log/kern.log\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"}"));
2323
}
24-
public static LogsBuilder allSystemLogs() {
24+
public static LogsPanelBuilder allSystemLogs() {
2525
return Common.defaultLogs().
2626
title("All system logs").
2727
withTarget(Common.basicLokiQuery("{transport!=\"\", job=\"integrations/raspberrypi-node\", instance=\"$instance\"}")).

examples/java/src/main/java/test/Memory.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@
77
import com.grafana.foundation.dashboard.Threshold;
88
import com.grafana.foundation.dashboard.ThresholdsConfigBuilder;
99
import com.grafana.foundation.dashboard.ThresholdsMode;
10-
import com.grafana.foundation.gauge.GaugeBuilder;
11-
import com.grafana.foundation.timeseries.TimeseriesBuilder;
10+
import com.grafana.foundation.gauge.GaugePanelBuilder;
11+
import com.grafana.foundation.timeseries.TimeseriesPanelBuilder;
1212

1313
public class Memory {
1414

15-
public static TimeseriesBuilder memoryUsageTimeseries() {
15+
public static TimeseriesPanelBuilder memoryUsageTimeseries() {
1616
String memUsedQuery = "(" +
1717
" node_memory_MemTotal_bytes{job=\"integrations/raspberrypi-node\", instance=\"$instance\"}"
1818
+
@@ -49,7 +49,7 @@ public static TimeseriesBuilder memoryUsageTimeseries() {
4949
"Free"));
5050
}
5151

52-
public static GaugeBuilder memoryUsageGauge() {
52+
public static GaugePanelBuilder memoryUsageGauge() {
5353
String query = "100 - (" +
5454
" avg(node_memory_MemAvailable_bytes{job=\"integrations/raspberrypi-node\", instance=\"$instance\"}) /"
5555
+

examples/java/src/main/java/test/Network.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
package test;
22

3-
import com.grafana.foundation.timeseries.TimeseriesBuilder;
3+
import com.grafana.foundation.timeseries.TimeseriesPanelBuilder;
44

55
public class Network {
66

7-
public static TimeseriesBuilder networkReceivedTimeseries() {
7+
public static TimeseriesPanelBuilder networkReceivedTimeseries() {
88
return Common.defaultTimeSeries().title("Network Received").description("Network received (bits/s)")
99
.min(0.0).unit("bps").fillOpacity(0.0).withTarget(
1010
Common.basicPrometheusQuery(
1111
"rate(node_network_receive_bytes_total{job=\"integrations/raspberrypi-node\", instance=\"$instance\", device!=\"lo\"}[$__rate_interval]) * 8",
1212
"{{ device }}"));
1313
}
1414

15-
public static TimeseriesBuilder networkTransmittedTimeseries() {
15+
public static TimeseriesPanelBuilder networkTransmittedTimeseries() {
1616
return Common.defaultTimeSeries().title("Network Transmitted")
1717
.description("Network transmitted (bits/s)").min(0.0).unit("bps").fillOpacity(0.0)
1818
.withTarget(

internal/jennies/java/builder.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ func (jenny Builder) genBuilder(context languages.Context, builder ast.Builder)
9494

9595
func (jenny Builder) getBuilderName(builder ast.Builder) string {
9696
if builder.For.SelfRef.ReferredPkg != builder.Package {
97-
return tools.UpperCamelCase(builder.Package)
97+
return fmt.Sprintf("%s%s", tools.UpperCamelCase(builder.Package), tools.UpperCamelCase(builder.For.SelfRef.ReferredType))
9898
}
9999

100100
return tools.UpperCamelCase(builder.Name)

testdata/jennies/builders/foreign_builder/JavaBuilder/builder_pkg/BuilderPkgBuilder.java renamed to testdata/jennies/builders/foreign_builder/JavaBuilder/builder_pkg/BuilderPkgSomeStructBuilder.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
import some_pkg.SomeStruct;
44

5-
public class BuilderPkgBuilder implements cog.Builder<SomeStruct> {
5+
public class BuilderPkgSomeStructBuilder implements cog.Builder<SomeStruct> {
66
protected final SomeStruct internal;
77

8-
public BuilderPkgBuilder() {
8+
public BuilderPkgSomeStructBuilder() {
99
this.internal = new SomeStruct();
1010
}
11-
public BuilderPkgBuilder title(String title) {
11+
public BuilderPkgSomeStructBuilder title(String title) {
1212
this.internal.title = title;
1313
return this;
1414
}

testdata/jennies/builders/package-with-dashes/JavaBuilder/builderpkg/BuilderPkgBuilder.java renamed to testdata/jennies/builders/package-with-dashes/JavaBuilder/builderpkg/BuilderPkgSomeStructBuilder.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
import with-dashes.SomeStruct;
44

5-
public class BuilderPkgBuilder implements cog.Builder<SomeStruct> {
5+
public class BuilderPkgSomeStructBuilder implements cog.Builder<SomeStruct> {
66
protected final SomeStruct internal;
77

8-
public BuilderPkgBuilder() {
8+
public BuilderPkgSomeStructBuilder() {
99
this.internal = new SomeStruct();
1010
}
11-
public BuilderPkgBuilder title(String title) {
11+
public BuilderPkgSomeStructBuilder title(String title) {
1212
this.internal.title = title;
1313
return this;
1414
}

0 commit comments

Comments
 (0)