package com.inspect.ivs.vo;

import java.util.Objects;

public class IvsDevChanSnapVo extends IvsVo {
   private String serial;
   private String channel;
   private boolean realtime;
   private boolean check_outputs;
   private boolean timeout;

   public String getSerial() {
      return this.serial;
   }

   public String getChannel() {
      return this.channel;
   }

   public boolean isRealtime() {
      return this.realtime;
   }

   public boolean isCheck_outputs() {
      return this.check_outputs;
   }

   public boolean isTimeout() {
      return this.timeout;
   }

   public void setSerial(String serial) {
      this.serial = serial;
   }

   public void setChannel(String channel) {
      this.channel = channel;
   }

   public void setRealtime(boolean realtime) {
      this.realtime = realtime;
   }

   public void setCheck_outputs(boolean check_outputs) {
      this.check_outputs = check_outputs;
   }

   public void setTimeout(boolean timeout) {
      this.timeout = timeout;
   }

   @Override
   public boolean equals(Object object) {
      if (this == object) return true;
      if (object == null || getClass() != object.getClass()) return false;
      if (!super.equals(object)) return false;
      IvsDevChanSnapVo that = (IvsDevChanSnapVo) object;
      return realtime == that.realtime && check_outputs == that.check_outputs && timeout == that.timeout && Objects.equals(serial, that.serial) && Objects.equals(channel, that.channel);
   }

   @Override
   public int hashCode() {
      return Objects.hash(super.hashCode(), serial, channel, realtime, check_outputs, timeout);
   }

   @Override
   public String toString() {
      return "IvsDevChanSnapVo{" +
              "serial='" + serial + '\'' +
              ", channel='" + channel + '\'' +
              ", realtime=" + realtime +
              ", check_outputs=" + check_outputs +
              ", timeout=" + timeout +
              ", code='" + getCode() + '\'' +
              ", cameraCode='" + getCameraCode() + '\'' +
              ", domainCode='" + getDomainCode() + '\'' +
              ", presetName='" + getName() + '\'' +
              ", patrolPointId='" + getId() + '\'' +
              ", host='" + getHost() + '\'' +
              ", port='" + getPort() + '\'' +
              ", username='" + getUsername() + '\'' +
              ", password='" + getPassword() + '\'' +
              ", address='" + getAddress() + '\'' +
              ", UUID='" + getUUID() + '\'' +
              '}';
   }
}
