2 * Copyright (c) 2010-2023 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.radiothermostat.internal.dto;
15 import com.google.gson.annotations.SerializedName;
18 * The {@link RadioThermostatTstatDTO} is responsible for storing
19 * the data from the thermostat 'tstat' JSON response
21 * @author Michael Lobstein - Initial contribution
23 public class RadioThermostatTstatDTO {
25 @SerializedName("temp")
26 private Double temperature;
28 @SerializedName("tmode")
31 @SerializedName("fmode")
32 private Integer fanMode;
34 @SerializedName("program_mode")
35 private Integer programMode;
37 @SerializedName("t_heat")
38 private Double heatTarget;
40 @SerializedName("t_cool")
41 private Double coolTarget;
43 @SerializedName("override")
44 private Integer override;
46 @SerializedName("hold")
49 @SerializedName("tstate")
50 private Integer status;
52 @SerializedName("fstate")
53 private Integer fanStatus;
55 @SerializedName("time")
56 private RadioThermostatTimeDTO time;
58 public RadioThermostatTstatDTO() {
61 public Double getTemperature() {
65 public Integer getMode() {
69 public void setMode(Integer mode) {
73 public Integer getFanMode() {
77 public void setFanMode(Integer fanMode) {
78 this.fanMode = fanMode;
81 public Integer getProgramMode() {
85 public void setProgramMode(Integer programMode) {
86 this.programMode = programMode;
89 public Double getHeatTarget() {
93 public void setHeatTarget(Double heatTarget) {
94 this.heatTarget = heatTarget;
97 public Double getCoolTarget() {
101 public void setCoolTarget(Double coolTarget) {
102 this.coolTarget = coolTarget;
105 public Integer getOverride() {
109 public void setOverride(Integer override) {
110 this.override = override;
113 public Integer getHold() {
117 public void setHold(Integer hold) {
121 public Integer getStatus() {
125 public Integer getFanStatus() {
130 * Determine if we are in heat mode or cool mode and return that temp value
134 public Integer getSetpoint() {
136 return heatTarget.intValue();
137 } else if (mode == 2) {
138 return coolTarget.intValue();
145 * Receives "time" node from the JSON response
147 * @return {RadioThermostatJsonTime}
149 public RadioThermostatTimeDTO getTime() {