]> git.basschouten.com Git - openhab-addons.git/blob
e8e349c31837cc34a7cbe1440603f614fcc9de9c
[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.knx.internal.client;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.core.types.Type;
17
18 import tuwien.auto.calimero.GroupAddress;
19
20 /**
21  * Describes the relevant parameters for writing to the KNX bus.
22  *
23  * @author Simon Kaufmann - initial contribution and API
24  *
25  */
26 @NonNullByDefault
27 public interface OutboundSpec {
28
29     /**
30      * Get the datapoint type.
31      *
32      * @return the datapoint type
33      */
34     String getDPT();
35
36     /**
37      * The group address to be used.
38      *
39      * @return the group address
40      */
41     GroupAddress getGroupAddress();
42
43     /**
44      * The command or state to be sent.
45      *
46      * @return the command/state
47      */
48     Type getValue();
49
50     /**
51      * Check if group address to be used matches a given group address.
52      *
53      * @param groupAddress group address to be compared
54      * @return true if addresses match
55      */
56     boolean matchesDestination(GroupAddress groupAddress);
57 }