]> git.basschouten.com Git - openhab-addons.git/blob
b07a2ffe53f556d27c877fbb1fe28799f42ff19d
[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.sleepiq.internal.api.dto;
14
15 import org.openhab.binding.sleepiq.internal.api.enums.Side;
16
17 /**
18  * The {@link SleepNumberRequest} holds the information used to set the sleep number
19  * for a bed side.
20  *
21  * @author Gregory Moyer - Initial contribution
22  */
23 public class SleepNumberRequest {
24     private String bedId;
25     private Integer sleepNumber;
26     private Side side;
27
28     public String getBedId() {
29         return bedId;
30     }
31
32     public void setBedId(String bedId) {
33         this.bedId = bedId;
34     }
35
36     public SleepNumberRequest withBedId(String bedId) {
37         setBedId(bedId);
38         return this;
39     }
40
41     public Integer getSleepNumber() {
42         return sleepNumber;
43     }
44
45     public void setSleepNumber(Integer sleepNumber) {
46         this.sleepNumber = sleepNumber;
47     }
48
49     public SleepNumberRequest withSleepNumber(Integer sleepNumber) {
50         setSleepNumber(sleepNumber);
51         return this;
52     }
53
54     public Side getSide() {
55         return side;
56     }
57
58     public void setSide(Side side) {
59         this.side = side;
60     }
61
62     public SleepNumberRequest withSide(Side side) {
63         setSide(side);
64         return this;
65     }
66
67     @Override
68     public int hashCode() {
69         final int prime = 31;
70         int result = 1;
71         result = prime * result + ((bedId == null) ? 0 : bedId.hashCode());
72         result = prime * result + ((sleepNumber == null) ? 0 : sleepNumber.hashCode());
73         result = prime * result + ((side == null) ? 0 : side.hashCode());
74         return result;
75     }
76
77     @Override
78     public boolean equals(Object obj) {
79         if (this == obj) {
80             return true;
81         }
82         if (obj == null) {
83             return false;
84         }
85         if (!(obj instanceof SleepNumberRequest)) {
86             return false;
87         }
88         SleepNumberRequest other = (SleepNumberRequest) obj;
89         if (bedId == null) {
90             if (other.bedId != null) {
91                 return false;
92             }
93         } else if (!bedId.equals(other.bedId)) {
94             return false;
95         }
96         if (sleepNumber == null) {
97             if (other.sleepNumber != null) {
98                 return false;
99             }
100         } else if (sleepNumber.equals(other.sleepNumber)) {
101             return false;
102         }
103         if (side == null) {
104             if (other.side != null) {
105                 return false;
106             }
107         } else if (!side.equals(other.side)) {
108             return false;
109         }
110         return true;
111     }
112
113     @Override
114     public String toString() {
115         StringBuilder builder = new StringBuilder();
116         builder.append("SleepNumberRequest [bedId=");
117         builder.append(bedId);
118         builder.append(", sleepNumber=");
119         builder.append(sleepNumber);
120         builder.append(", side=");
121         builder.append(side);
122         builder.append("]");
123         return builder.toString();
124     }
125 }