Skip to content

Commit 2eb8c32

Browse files
committed
[automation] Make RuleManager accessible through RuleSupportScriptExtension
Signed-off-by: Florian Hotze <dev@florianhotze.com>
1 parent cd816f4 commit 2eb8c32

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

  • bundles/org.openhab.core.automation.module.script.rulesupport/src/main/java/org/openhab/core/automation/module/script/rulesupport/internal

bundles/org.openhab.core.automation.module.script.rulesupport/src/main/java/org/openhab/core/automation/module/script/rulesupport/internal/RuleSupportScriptExtension.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.openhab.core.automation.Action;
2828
import org.openhab.core.automation.Condition;
2929
import org.openhab.core.automation.Rule;
30+
import org.openhab.core.automation.RuleManager;
3031
import org.openhab.core.automation.RuleRegistry;
3132
import org.openhab.core.automation.Trigger;
3233
import org.openhab.core.automation.Visibility;
@@ -67,6 +68,7 @@ public class RuleSupportScriptExtension implements ScriptExtensionProvider {
6768
private static final String RULE_SUPPORT = "RuleSupport";
6869
private static final String RULE_REGISTRY = "ruleRegistry";
6970
private static final String AUTOMATION_MANAGER = "automationManager";
71+
private static final String RULE_MANAGER = "ruleManager";
7072

7173
private static final Map<String, Collection<String>> PRESETS = new HashMap<>();
7274
private static final Map<String, Object> STATIC_TYPES = new HashMap<>();
@@ -75,6 +77,7 @@ public class RuleSupportScriptExtension implements ScriptExtensionProvider {
7577
private final Map<String, Map<String, Object>> objectCache = new ConcurrentHashMap<>();
7678

7779
private final RuleRegistry ruleRegistry;
80+
private final RuleManager ruleManager;
7881
private final ScriptedRuleProvider ruleProvider;
7982
private final ScriptedCustomModuleHandlerFactory scriptedCustomModuleHandlerFactory;
8083
private final ScriptedCustomModuleTypeProvider scriptedCustomModuleTypeProvider;
@@ -110,6 +113,7 @@ public class RuleSupportScriptExtension implements ScriptExtensionProvider {
110113

111114
TYPES.add(AUTOMATION_MANAGER);
112115
TYPES.add(RULE_REGISTRY);
116+
TYPES.add(RULE_MANAGER);
113117

114118
PRESETS.put(RULE_SUPPORT, Arrays.asList("Configuration", "Action", "Condition", "Trigger", "Rule",
115119
"ModuleBuilder", "ActionBuilder", "ConditionBuilder", "TriggerBuilder"));
@@ -122,11 +126,13 @@ public class RuleSupportScriptExtension implements ScriptExtensionProvider {
122126

123127
@Activate
124128
public RuleSupportScriptExtension(final @Reference RuleRegistry ruleRegistry,
129+
final @Reference RuleManager ruleManager,
125130
final @Reference ScriptedRuleProvider ruleProvider,
126131
final @Reference ScriptedCustomModuleHandlerFactory scriptedCustomModuleHandlerFactory,
127132
final @Reference ScriptedCustomModuleTypeProvider scriptedCustomModuleTypeProvider,
128133
final @Reference ScriptedPrivateModuleHandlerFactory scriptedPrivateModuleHandlerFactory) {
129134
this.ruleRegistry = ruleRegistry;
135+
this.ruleManager = ruleManager;
130136
this.ruleProvider = ruleProvider;
131137
this.scriptedCustomModuleHandlerFactory = scriptedCustomModuleHandlerFactory;
132138
this.scriptedCustomModuleTypeProvider = scriptedCustomModuleTypeProvider;
@@ -173,6 +179,10 @@ public Collection<String> getTypes() {
173179
objects.put(AUTOMATION_MANAGER, automationManager);
174180
objects.put(RULE_REGISTRY, ruleRegistryDelegate);
175181

182+
obj = objects.get(type);
183+
} else if (RULE_MANAGER.equals(type)) {
184+
objects.put(RULE_MANAGER, ruleManager);
185+
176186
obj = objects.get(type);
177187
}
178188

0 commit comments

Comments
 (0)