From 6e549323b1a20c03b267807065d72b6255e5baae Mon Sep 17 00:00:00 2001 From: matsfunk Date: Tue, 30 Nov 2021 11:59:26 +0100 Subject: [PATCH] v1.24 - added min and max aggregation functions to the filter and transform expression library --- server/dist/OOCSI_server.jar | Bin 2168685 -> 2181403 bytes .../nl/tue/id/oocsi/server/OOCSIServer.java | 2 +- .../id/oocsi/server/model/FunctionClient.java | 48 +++++++++++++++--- 3 files changed, 42 insertions(+), 8 deletions(-) diff --git a/server/dist/OOCSI_server.jar b/server/dist/OOCSI_server.jar index d92f06f712c23b66f8aaac76001f20610497d63c..65d3633d92be4d1fa982491b47b8a6143867be4e 100644 GIT binary patch delta 67008 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 delta 54534 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 diff --git a/server/src/nl/tue/id/oocsi/server/OOCSIServer.java b/server/src/nl/tue/id/oocsi/server/OOCSIServer.java index 884d3c4..25f88fb 100644 --- a/server/src/nl/tue/id/oocsi/server/OOCSIServer.java +++ b/server/src/nl/tue/id/oocsi/server/OOCSIServer.java @@ -29,7 +29,7 @@ public class OOCSIServer extends Server { // constants - public static final String VERSION = "1.23"; + public static final String VERSION = "1.24"; // defaults for different services private int maxClients = 100; diff --git a/server/src/nl/tue/id/oocsi/server/model/FunctionClient.java b/server/src/nl/tue/id/oocsi/server/model/FunctionClient.java index 583c2ea..445a57f 100644 --- a/server/src/nl/tue/id/oocsi/server/model/FunctionClient.java +++ b/server/src/nl/tue/id/oocsi/server/model/FunctionClient.java @@ -28,6 +28,8 @@ public class FunctionClient extends Client { private WindowFunction sumFct = new SumOverWindowFunction(); private WindowFunction meanFct = new MeanOverWindowFunction(); private WindowFunction stdevFct = new StandardDeviationOverWindowFunction(); + private WindowFunction minFct = new MinOverWindowFunction(); + private WindowFunction maxFct = new MaxOverWindowFunction(); public FunctionClient(Client delegateClient, String token, String functionString, ChangeListener presence) { super(token, presence); @@ -68,12 +70,16 @@ public void send(Message message) { // apply expression try { final Expression e = loadExpression(expression, message, true); - if (expression.contains("sum(")) + if (expression.contains("sum(") || expression.contains("SUM(")) e.addFunction(sumFct); - if (expression.contains("mean(")) + if (expression.contains("mean(") || expression.contains("MEAN(")) e.addFunction(meanFct); - if (expression.contains("stdev(")) + if (expression.contains("stdev(") || expression.contains("STDEV(")) e.addFunction(stdevFct); + if (expression.contains("emin(") || expression.contains("EMIN(")) + e.addFunction(minFct); + if (expression.contains("emax(") || expression.contains("EMAX(")) + e.addFunction(maxFct); BigDecimal bd = e.eval(); if (bd.intValue() == 0) { return; @@ -88,12 +94,16 @@ public void send(Message message) { for (String expression : transformExpression) { try { Expression e = loadExpression(expression, message, false); - if (expression.contains("sum(")) + if (expression.contains("sum(") || expression.contains("SUM(")) e.addFunction(sumFct); - if (expression.contains("mean(")) + if (expression.contains("mean(") || expression.contains("MEAN(")) e.addFunction(meanFct); - if (expression.contains("stdev(")) + if (expression.contains("stdev(") || expression.contains("STDEV(")) e.addFunction(stdevFct); + if (expression.contains("emin(") || expression.contains("EMIN(")) + e.addFunction(minFct); + if (expression.contains("emax(") || expression.contains("EMAX(")) + e.addFunction(maxFct); e.addLazyFunction(new AbstractTransform(message)); e.eval(); } catch (Exception ex) { @@ -118,7 +128,7 @@ public void send(Message message) { * @param abortOnMissing * @return */ - private static Expression loadExpression(final String expression, Message message, boolean abortOnMissing) { + private Expression loadExpression(final String expression, Message message, boolean abortOnMissing) { final Expression e = new Expression(expression); List vars = e.getUsedVariables(); for (String key : vars) { @@ -267,6 +277,30 @@ private double mean(Queue queue) { } } + class MinOverWindowFunction extends WindowFunction { + + protected MinOverWindowFunction() { + super("emin", 2); + } + + @Override + public BigDecimal evalQueue(Queue queue) { + return queue.stream().min((a, b) -> a.compareTo(b)).orElse(new BigDecimal(0)); + } + } + + class MaxOverWindowFunction extends WindowFunction { + + protected MaxOverWindowFunction() { + super("emax", 2); + } + + @Override + public BigDecimal evalQueue(Queue queue) { + return queue.stream().max((a, b) -> a.compareTo(b)).orElse(new BigDecimal(0)); + } + } + class AbstractTransform extends AbstractLazyFunction { private Message message;