From e3487557b3b1868b18b6e8d7da0fc9bbfb1ee2a5 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Tue, 28 Feb 2023 19:19:19 +0100 Subject: [PATCH] prepare to have more flexibility when for plots --- .../lucares/pdb/plot/api/PlotSettings.java | 12 ++++++ .../lucares/pdb/plot/api/RenderOptions.java | 41 +++++++++++++++++++ .../pdbui/PlotSettingsTransformer.java | 1 + .../org/lucares/pdbui/domain/PlotRequest.java | 15 +++++++ 4 files changed, 69 insertions(+) create mode 100644 pdb-plotting/src/main/java/org/lucares/pdb/plot/api/RenderOptions.java diff --git a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/PlotSettings.java b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/PlotSettings.java index e0e22ce..38ddb72 100644 --- a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/PlotSettings.java +++ b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/PlotSettings.java @@ -5,7 +5,9 @@ import java.time.OffsetDateTime; import java.time.ZoneOffset; import java.time.format.DateTimeFormatter; import java.util.List; +import java.util.Map; import java.util.Optional; +import java.util.TreeMap; import java.util.regex.Pattern; import org.lucares.pdb.api.DateTimeRange; @@ -47,6 +49,16 @@ public class PlotSettings { private boolean renderBarChartTickLabels; + private Map renders = new TreeMap<>(); + + public void setRenders(final Map renders) { + this.renders = renders; + } + + public Map getRenders() { + return renders; + } + public String getQuery() { return query; } diff --git a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/RenderOptions.java b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/RenderOptions.java new file mode 100644 index 0000000..840242f --- /dev/null +++ b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/RenderOptions.java @@ -0,0 +1,41 @@ +package org.lucares.pdb.plot.api; + +public class RenderOptions { + private int height; + private int width; + private boolean keyOutside; + private boolean renderLabels; + + public int getHeight() { + return height; + } + + public void setHeight(final int height) { + this.height = height; + } + + public int getWidth() { + return width; + } + + public void setWidth(final int width) { + this.width = width; + } + + public boolean isKeyOutside() { + return keyOutside; + } + + public void setKeyOutside(final boolean keyOutside) { + this.keyOutside = keyOutside; + } + + public boolean isRenderLabels() { + return renderLabels; + } + + public void setRenderLabels(final boolean renderLabels) { + this.renderLabels = renderLabels; + } + +} diff --git a/pdb-ui/src/main/java/org/lucares/pdbui/PlotSettingsTransformer.java b/pdb-ui/src/main/java/org/lucares/pdbui/PlotSettingsTransformer.java index e3761df..b22e068 100644 --- a/pdb-ui/src/main/java/org/lucares/pdbui/PlotSettingsTransformer.java +++ b/pdb-ui/src/main/java/org/lucares/pdbui/PlotSettingsTransformer.java @@ -38,6 +38,7 @@ class PlotSettingsTransformer { result.setAggregates(toAggregateInternal(config.getY1(), config.getY2(), config.getAggregates())); result.setInterval(Interval.create(config.getIntervalUnit(), config.getIntervalValue(), result.dateRange())); result.setRenderBarChartTickLabels(config.isRenderBarChartTickLabels()); + result.setRenders(request.getRenders()); return result; } diff --git a/pdb-ui/src/main/java/org/lucares/pdbui/domain/PlotRequest.java b/pdb-ui/src/main/java/org/lucares/pdbui/domain/PlotRequest.java index 224fd29..194ca19 100644 --- a/pdb-ui/src/main/java/org/lucares/pdbui/domain/PlotRequest.java +++ b/pdb-ui/src/main/java/org/lucares/pdbui/domain/PlotRequest.java @@ -1,5 +1,10 @@ package org.lucares.pdbui.domain; +import java.util.Map; +import java.util.TreeMap; + +import org.lucares.pdb.plot.api.RenderOptions; + public class PlotRequest { private int height = 1000; @@ -16,6 +21,16 @@ public class PlotRequest { private PlotConfig config; + private Map renders = new TreeMap<>(); + + public void setRenders(final Map renders) { + this.renders = renders; + } + + public Map getRenders() { + return renders; + } + public PlotConfig getConfig() { return config; }