]> git.basschouten.com Git - openhab-addons.git/blob
dc2b0759cbd73d5b99a9e6bef31b715da953469e
[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.tacmi.internal.coe;
14
15 import java.util.Objects;
16
17 import org.eclipse.jdt.annotation.NonNullByDefault;
18 import org.eclipse.jdt.annotation.Nullable;
19
20 /**
21  * The {@link TACmiConfiguration} class contains fields mapping thing
22  * configuration parameters.
23  *
24  * @author Christian Niessner - Initial contribution
25  */
26 @NonNullByDefault
27 public class TACmiChannelConfigurationDigital extends TACmiChannelConfiguration {
28
29     /**
30      * initial value
31      */
32     public @Nullable Boolean initialValue;
33
34     // required for MAP operations...
35     @Override
36     public int hashCode() {
37         Boolean iv = initialValue;
38         return 31 * output * (iv == null ? 1 : iv.booleanValue() ? 9 : 3);
39     }
40
41     @Override
42     public boolean equals(@Nullable Object other) {
43         if (this == other) {
44             return true;
45         }
46         if (other == null || !other.getClass().equals(TACmiChannelConfigurationDigital.class)) {
47             return false;
48         }
49         TACmiChannelConfigurationDigital o = (TACmiChannelConfigurationDigital) other;
50         return this.output == o.output && Objects.equals(this.initialValue, o.initialValue);
51     }
52 }