package com.inspect.ivs.view;

import java.io.Serializable;
import java.util.List;

public class IvsPresetListView implements Serializable {
   private int resultCode;
   private int ptzPresetNum;
   private IvsPresetListView.PtzPresetInfoList ptzPresetInfoList;

   public int getResultCode() {
      return this.resultCode;
   }

   public int getPtzPresetNum() {
      return this.ptzPresetNum;
   }

   public IvsPresetListView.PtzPresetInfoList getPtzPresetInfoList() {
      return this.ptzPresetInfoList;
   }

   public void setResultCode(int resultCode) {
      this.resultCode = resultCode;
   }

   public void setPtzPresetNum(int ptzPresetNum) {
      this.ptzPresetNum = ptzPresetNum;
   }

   public void setPtzPresetInfoList(IvsPresetListView.PtzPresetInfoList ptzPresetInfoList) {
      this.ptzPresetInfoList = ptzPresetInfoList;
   }

   public boolean equals(Object o) {
      if(o == this) {
         return true;
      } else if(!(o instanceof IvsPresetListView)) {
         return false;
      } else {
         IvsPresetListView other = (IvsPresetListView)o;
         if(!other.canEqual(this)) {
            return false;
         } else if(this.getResultCode() != other.getResultCode()) {
            return false;
         } else if(this.getPtzPresetNum() != other.getPtzPresetNum()) {
            return false;
         } else {
            Object this$ptzPresetInfoList = this.getPtzPresetInfoList();
            Object other$ptzPresetInfoList = other.getPtzPresetInfoList();
            if(this$ptzPresetInfoList == null) {
               if(other$ptzPresetInfoList == null) {
                  return true;
               }
            } else if(this$ptzPresetInfoList.equals(other$ptzPresetInfoList)) {
               return true;
            }

            return false;
         }
      }
   }

   protected boolean canEqual(Object other) {
      return other instanceof IvsPresetListView;
   }

   public int hashCode() {
      int PRIME = 1;
      int result = 1;
      result = result * 59 + this.getResultCode();
      result = result * 59 + this.getPtzPresetNum();
      Object $ptzPresetInfoList = this.getPtzPresetInfoList();
      result = result * 59 + ($ptzPresetInfoList == null?43:$ptzPresetInfoList.hashCode());
      return result;
   }

   public String toString() {
      return "IvsPresetListView(resultCode=" + this.getResultCode() + ", ptzPresetNum=" + this.getPtzPresetNum() + ", ptzPresetInfoList=" + this.getPtzPresetInfoList() + ")";
   }

   public static class PtzPresetInfo implements Serializable {
      private int presetIndex;
      private String presetName;
      private String reserve;
      private int focusSwitch;

      public int getPresetIndex() {
         return this.presetIndex;
      }

      public String getPresetName() {
         return this.presetName;
      }

      public String getReserve() {
         return this.reserve;
      }

      public int getFocusSwitch() {
         return this.focusSwitch;
      }

      public void setPresetIndex(int presetIndex) {
         this.presetIndex = presetIndex;
      }

      public void setPresetName(String presetName) {
         this.presetName = presetName;
      }

      public void setReserve(String reserve) {
         this.reserve = reserve;
      }

      public void setFocusSwitch(int focusSwitch) {
         this.focusSwitch = focusSwitch;
      }

      public boolean equals(Object o) {
         if(o == this) {
            return true;
         } else if(!(o instanceof IvsPresetListView.PtzPresetInfo)) {
            return false;
         } else {
            IvsPresetListView.PtzPresetInfo other = (IvsPresetListView.PtzPresetInfo)o;
            if(!other.canEqual(this)) {
               return false;
            } else if(this.getPresetIndex() != other.getPresetIndex()) {
               return false;
            } else if(this.getFocusSwitch() != other.getFocusSwitch()) {
               return false;
            } else {
               label40: {
                  Object this$presetName = this.getPresetName();
                  Object other$presetName = other.getPresetName();
                  if(this$presetName == null) {
                     if(other$presetName == null) {
                        break label40;
                     }
                  } else if(this$presetName.equals(other$presetName)) {
                     break label40;
                  }

                  return false;
               }

               Object this$reserve = this.getReserve();
               Object other$reserve = other.getReserve();
               if(this$reserve == null) {
                  if(other$reserve != null) {
                     return false;
                  }
               } else if(!this$reserve.equals(other$reserve)) {
                  return false;
               }

               return true;
            }
         }
      }

      protected boolean canEqual(Object other) {
         return other instanceof IvsPresetListView.PtzPresetInfo;
      }

      public int hashCode() {
         int PRIME = 1;
         int result = 1;
         result = result * 59 + this.getPresetIndex();
         result = result * 59 + this.getFocusSwitch();
         Object $presetName = this.getPresetName();
         result = result * 59 + ($presetName == null?43:$presetName.hashCode());
         Object $reserve = this.getReserve();
         result = result * 59 + ($reserve == null?43:$reserve.hashCode());
         return result;
      }

      public String toString() {
         return "IvsPresetListView.PtzPresetInfo(presetIndex=" + this.getPresetIndex() + ", presetName=" + this.getPresetName() + ", reserve=" + this.getReserve() + ", focusSwitch=" + this.getFocusSwitch() + ")";
      }
   }

   public static class PtzPresetInfoList implements Serializable {
      private List<IvsPresetListView.PtzPresetInfo> ptzPresetInfo;

      public List<IvsPresetListView.PtzPresetInfo> getPtzPresetInfo() {
         return this.ptzPresetInfo;
      }

      public void setPtzPresetInfo(List<IvsPresetListView.PtzPresetInfo> ptzPresetInfo) {
         this.ptzPresetInfo = ptzPresetInfo;
      }

      public boolean equals(Object o) {
         if(o == this) {
            return true;
         } else if(!(o instanceof IvsPresetListView.PtzPresetInfoList)) {
            return false;
         } else {
            IvsPresetListView.PtzPresetInfoList other = (IvsPresetListView.PtzPresetInfoList)o;
            if(!other.canEqual(this)) {
               return false;
            } else {
               Object this$ptzPresetInfo = this.getPtzPresetInfo();
               Object other$ptzPresetInfo = other.getPtzPresetInfo();
               if(this$ptzPresetInfo == null) {
                  if(other$ptzPresetInfo != null) {
                     return false;
                  }
               } else if(!this$ptzPresetInfo.equals(other$ptzPresetInfo)) {
                  return false;
               }

               return true;
            }
         }
      }

      protected boolean canEqual(Object other) {
         return other instanceof IvsPresetListView.PtzPresetInfoList;
      }

      public int hashCode() {
         int PRIME = 1;
         int result = 1;
         Object $ptzPresetInfo = this.getPtzPresetInfo();
         result = result * 59 + ($ptzPresetInfo == null?43:$ptzPresetInfo.hashCode());
         return result;
      }

      public String toString() {
         return "IvsPresetListView.PtzPresetInfoList(ptzPresetInfo=" + this.getPtzPresetInfo() + ")";
      }
   }
}
