]> git.basschouten.com Git - openhab-addons.git/blob
551f57ca7b1a6c79027d443d8c2d5e70520f21cf
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2023 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
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
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.nest.internal.wwn.listener;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.binding.nest.internal.wwn.dto.WWNTopLevelData;
17 import org.openhab.binding.nest.internal.wwn.rest.WWNStreamingRestClient;
18
19 /**
20  * Interface for listeners of events generated by the {@link WWNStreamingRestClient}.
21  *
22  * @author Wouter Born - Initial contribution
23  * @author Wouter Born - Replace polling with REST streaming
24  */
25 @NonNullByDefault
26 public interface WWNStreamingDataListener {
27
28     /**
29      * Authorization has been revoked for a token.
30      */
31     void onAuthorizationRevoked(String token);
32
33     /**
34      * The client successfully established a connection.
35      */
36     void onConnected();
37
38     /**
39      * The client was disconnected.
40      */
41     void onDisconnected();
42
43     /**
44      * An error message was published.
45      */
46     void onError(String message);
47
48     /**
49      * Initial {@link WWNTopLevelData} or an update is sent.
50      */
51     void onNewTopLevelData(WWNTopLevelData data);
52 }