/** * Copyright (c) 2015-2017 Simon Merschjohann and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html */ package org.eclipse.smarthome.automation.module.script.rulesupport.internal.delegates; import java.util.Map; import org.eclipse.smarthome.automation.Trigger; import org.eclipse.smarthome.automation.handler.RuleEngineCallback; import org.eclipse.smarthome.automation.module.script.rulesupport.shared.simple.SimpleRuleEngineCallback; /** * The {@link SimpleRuleEngineCallbackDelegate} allows a script to define callbacks for triggers in different ways. * * @author Simon Merschjohann * */ public class SimpleRuleEngineCallbackDelegate implements SimpleRuleEngineCallback { private Trigger trigger; private RuleEngineCallback callback; public SimpleRuleEngineCallbackDelegate(Trigger trigger, RuleEngineCallback callback) { this.trigger = trigger; this.callback = callback; } @Override public void triggered(Trigger trigger, Map<String, ?> context) { callback.triggered(trigger, context); } @Override public void triggered(Map<String, ?> context) { callback.triggered(this.trigger, context); } }