2 * Copyright (c) 2010-2022 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.mielecloud.internal.webservice;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.binding.mielecloud.internal.webservice.api.ActionsState;
17 import org.openhab.binding.mielecloud.internal.webservice.api.DeviceState;
20 * Listener for the device states.
22 * @author Björn Lange and Roland Edelhoff - Initial contribution
25 public interface DeviceStateListener {
27 * Invoked when new status information is available for a device.
29 * @param deviceState The device state information.
31 void onDeviceStateUpdated(DeviceState deviceState);
34 * Invoked when a new process action is available for a device.
36 * @param ActionsState The action state information.
38 void onProcessActionUpdated(ActionsState actionState);
41 * Invoked when a device got removed from the Miele cloud and no information is available about it.
43 * @param deviceIdentifier The identifier of the removed device.
45 void onDeviceRemoved(String deviceIdentifier);