/**
* Copyright (c) 1997, 2015 by ProSyst Software GmbH 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.events;
import org.eclipse.smarthome.automation.dto.RuleDTO;
import org.eclipse.smarthome.core.events.AbstractEvent;
/**
* abstract class for rule events
*
* @author Benedikt Niehues - initial contribution
* @author Markus Rathgeb - Use the DTO for the Rule representation
*
*/
public abstract class AbstractRuleRegistryEvent extends AbstractEvent {
private final RuleDTO rule;
/**
* Must be called in subclass constructor to create a new rule registry event.
*
* @param topic the topic of the event
* @param payload the payload of the event
* @param source the source of the event
* @param ruleDTO the ruleDTO for which this event is created
*/
public AbstractRuleRegistryEvent(String topic, String payload, String source, RuleDTO rule) {
super(topic, payload, source);
this.rule = rule;
}
/**
* @return the RuleDTO which caused the Event
*/
public RuleDTO getRule() {
return this.rule;
}
}