From 0d14bb35381f71d2aa3904644455dee99469af9fd695f71fc2b0b4a88eb51835 Mon Sep 17 00:00:00 2001 From: Minimons Date: Sat, 27 Jun 2026 20:48:28 +0200 Subject: [PATCH] 20: Store variables keys without brackets --- .../impl/ref/AlarmConfigurationParser.tjava | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/AlarmConfigurationParser.tjava b/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/AlarmConfigurationParser.tjava index 050484f..3d88476 100644 --- a/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/AlarmConfigurationParser.tjava +++ b/src/main/tjava/com/r35157/jupiterperpsalarm/impl/ref/AlarmConfigurationParser.tjava @@ -237,9 +237,21 @@ public final class AlarmConfigurationParser { validateConstantName(name); - if (constants.putIfAbsent(name, value) != null) { - throw new IllegalArgumentException("Duplicate constant: " + name); + constants.put(parseVariableName(name), value); + } + + private static String parseVariableName(String variableName) { + if (!variableName.startsWith("{{") || !variableName.endsWith("}}")) { + throw new IllegalArgumentException("Invalid variable name: " + variableName); } + + String parsedVariableName = variableName.substring(2, variableName.length() - 2); + + if (parsedVariableName.isBlank()) { + throw new IllegalArgumentException("Variable name cannot be blank: " + variableName); + } + + return parsedVariableName; } private static String replaceConstants(