diff --git a/bundles/org.openhab.core.model.rule.runtime/src/org/openhab/core/model/rule/runtime/internal/DSLRuleProvider.java b/bundles/org.openhab.core.model.rule.runtime/src/org/openhab/core/model/rule/runtime/internal/DSLRuleProvider.java index a6d2f42ab..035aa22c0 100644 --- a/bundles/org.openhab.core.model.rule.runtime/src/org/openhab/core/model/rule/runtime/internal/DSLRuleProvider.java +++ b/bundles/org.openhab.core.model.rule.runtime/src/org/openhab/core/model/rule/runtime/internal/DSLRuleProvider.java @@ -25,7 +25,6 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; import org.eclipse.xtext.nodemodel.util.NodeModelUtils; -import org.eclipse.xtext.xbase.XBlockExpression; import org.eclipse.xtext.xbase.XExpression; import org.eclipse.xtext.xbase.interpreter.IEvaluationContext; import org.openhab.core.automation.Action; @@ -272,7 +271,7 @@ public class DSLRuleProvider // Create Action String context = DSLScriptContextProvider.CONTEXT_IDENTIFIER + modelName + "-" + index + "\n"; - XBlockExpression expression = rule.getScript(); + XExpression expression = rule.getScript(); String script = NodeModelUtils.findActualNodeFor(expression).getText(); Configuration cfg = new Configuration(); cfg.put("script", context + removeIndentation(script)); diff --git a/bundles/org.openhab.core.model.rule/src/org/openhab/core/model/rule/Rules.xtext b/bundles/org.openhab.core.model.rule/src/org/openhab/core/model/rule/Rules.xtext index ffd916fd9..5c25a258f 100644 --- a/bundles/org.openhab.core.model.rule/src/org/openhab/core/model/rule/Rules.xtext +++ b/bundles/org.openhab.core.model.rule/src/org/openhab/core/model/rule/Rules.xtext @@ -22,7 +22,7 @@ VariableDeclaration: Rule: 'rule' name=(STRING|ID) 'when' eventtrigger+=EventTrigger ('or' eventtrigger+=EventTrigger)* - 'then' script=Script + 'then' script=XExpressionInClosure 'end' ;