From 7a06d87f4a3a6df8c2ac929978bc49fb3b612c9bc8647d1a73c4ff511223dc4e Mon Sep 17 00:00:00 2001 From: Minimons Date: Sat, 27 Jun 2026 20:01:47 +0200 Subject: [PATCH] 20: Use resolver in PriceAlarm --- .../jupiterperpsalarm/impl/ref/PriceAlarm.tjava | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/PriceAlarm.tjava b/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/PriceAlarm.tjava index a1b831a..ee9c871 100644 --- a/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/PriceAlarm.tjava +++ b/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/PriceAlarm.tjava @@ -5,8 +5,13 @@ import java.time.Instant; public final class PriceAlarm { - public PriceAlarm(PriceAlarmDefinition definition, AlarmAction action) { + public PriceAlarm( + PriceAlarmDefinition definition, + AlarmVariableResolver variableResolver, + AlarmAction action + ) { this.definition = definition; + this.variableResolver = variableResolver; this.action = action; } @@ -17,7 +22,10 @@ public final class PriceAlarm { ); } - BigDecimal target = AlarmTargetParser.parse(definition.targetExpression()); + BigDecimal target = AlarmTargetParser.parse( + variableResolver.resolve(definition.targetExpression()) + ); + boolean reached = definition.direction().reached( price.priceUsd(), target @@ -84,6 +92,7 @@ public final class PriceAlarm { } private final PriceAlarmDefinition definition; + private final AlarmVariableResolver variableResolver; private final AlarmAction action; private Instant lastTriggeredAt;