2 * Copyright (c) 2010-2021 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.modbus.internal.config;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.eclipse.jdt.annotation.Nullable;
19 * Configuration for serial thing
21 * @author Sami Salonen - Initial contribution
25 public class ModbusSerialConfiguration {
26 private @Nullable String port;
29 private @Nullable String stopBits;
30 private @Nullable String parity;
32 private String encoding = "rtu";
34 private int receiveTimeoutMillis = 1500;
35 private String flowControlIn = "none";
36 private String flowControlOut = "none";
37 private int timeBetweenTransactionsMillis = 35;
38 private int connectMaxTries = 1;
39 private int connectTimeoutMillis = 10_000;
40 private boolean enableDiscovery;
42 public @Nullable String getPort() {
46 public void setPort(String port) {
54 public void setId(int id) {
58 public int getBaud() {
62 public void setBaud(int baud) {
66 public @Nullable String getStopBits() {
70 public void setStopBits(String stopBits) {
71 this.stopBits = stopBits;
74 public @Nullable String getParity() {
78 public void setParity(String parity) {
82 public int getDataBits() {
86 public void setDataBits(int dataBits) {
87 this.dataBits = dataBits;
90 public @Nullable String getEncoding() {
94 public void setEncoding(String encoding) {
95 this.encoding = encoding;
98 public boolean isEcho() {
102 public void setEcho(boolean echo) {
106 public int getReceiveTimeoutMillis() {
107 return receiveTimeoutMillis;
110 public void setReceiveTimeoutMillis(int receiveTimeoutMillis) {
111 this.receiveTimeoutMillis = receiveTimeoutMillis;
114 public @Nullable String getFlowControlIn() {
115 return flowControlIn;
118 public void setFlowControlIn(String flowControlIn) {
119 this.flowControlIn = flowControlIn;
122 public @Nullable String getFlowControlOut() {
123 return flowControlOut;
126 public void setFlowControlOut(String flowControlOut) {
127 this.flowControlOut = flowControlOut;
130 public int getTimeBetweenTransactionsMillis() {
131 return timeBetweenTransactionsMillis;
134 public void setTimeBetweenTransactionsMillis(int timeBetweenTransactionsMillis) {
135 this.timeBetweenTransactionsMillis = timeBetweenTransactionsMillis;
138 public int getConnectMaxTries() {
139 return connectMaxTries;
142 public void setConnectMaxTries(int connectMaxTries) {
143 this.connectMaxTries = connectMaxTries;
146 public int getConnectTimeoutMillis() {
147 return connectTimeoutMillis;
150 public void setConnectTimeoutMillis(int connectTimeoutMillis) {
151 this.connectTimeoutMillis = connectTimeoutMillis;
154 public boolean isDiscoveryEnabled() {
155 return enableDiscovery;
158 public void setDiscoveryEnabled(boolean enableDiscovery) {
159 this.enableDiscovery = enableDiscovery;