package com.chenyang.nse.bussiness.jar.db;

import com.chenyang.nse.bussiness.entity.orm.table.TBaseEntity;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;

@Entity
@Table(
   name = "T_CORE_CLIENT_INFO"
)
public class TCoreClientInfo extends TBaseEntity {
   @Column(
      length = 32
   )
   private String client_ip;
   private int client_port;
   private char client_status;
   private char is_controlled;
   @Column(
      length = 50
   )
   private String project_id;
   @Column(
      length = 50
   )
   private String last_opt_time;
   @Column(
      length = 50
   )
   private String last_req_time;
   @Column(
      length = 50
   )
   private String create_time;
   private String isForbidden;
   private String isTimeout;
   private Integer desensitizationIsOpen;
   @Column(
      name = "database_url"
   )
   private String databaseUrl;
   @Transient
   private String databaseUrlStatus = "1";
   @Column(
      name = "client_error"
   )
   private String clientError;
   @Column(
      name = "error_time"
   )
   private Date errorTime;

   public String getClient_ip() {
      return this.client_ip;
   }

   public int getClient_port() {
      return this.client_port;
   }

   public char getClient_status() {
      return this.client_status;
   }

   public char getIs_controlled() {
      return this.is_controlled;
   }

   public String getProject_id() {
      return this.project_id;
   }

   public String getLast_opt_time() {
      return this.last_opt_time;
   }

   public String getLast_req_time() {
      return this.last_req_time;
   }

   public String getCreate_time() {
      return this.create_time;
   }

   public String getIsForbidden() {
      return this.isForbidden;
   }

   public String getIsTimeout() {
      return this.isTimeout;
   }

   public Integer getDesensitizationIsOpen() {
      return this.desensitizationIsOpen;
   }

   public String getDatabaseUrl() {
      return this.databaseUrl;
   }

   public String getDatabaseUrlStatus() {
      return this.databaseUrlStatus;
   }

   public String getClientError() {
      return this.clientError;
   }

   public Date getErrorTime() {
      return this.errorTime;
   }

   public void setClient_ip(final String client_ip) {
      this.client_ip = client_ip;
   }

   public void setClient_port(final int client_port) {
      this.client_port = client_port;
   }

   public void setClient_status(final char client_status) {
      this.client_status = client_status;
   }

   public void setIs_controlled(final char is_controlled) {
      this.is_controlled = is_controlled;
   }

   public void setProject_id(final String project_id) {
      this.project_id = project_id;
   }

   public void setLast_opt_time(final String last_opt_time) {
      this.last_opt_time = last_opt_time;
   }

   public void setLast_req_time(final String last_req_time) {
      this.last_req_time = last_req_time;
   }

   public void setCreate_time(final String create_time) {
      this.create_time = create_time;
   }

   public void setIsForbidden(final String isForbidden) {
      this.isForbidden = isForbidden;
   }

   public void setIsTimeout(final String isTimeout) {
      this.isTimeout = isTimeout;
   }

   public void setDesensitizationIsOpen(final Integer desensitizationIsOpen) {
      this.desensitizationIsOpen = desensitizationIsOpen;
   }

   public void setDatabaseUrl(final String databaseUrl) {
      this.databaseUrl = databaseUrl;
   }

   public void setDatabaseUrlStatus(final String databaseUrlStatus) {
      this.databaseUrlStatus = databaseUrlStatus;
   }

   public void setClientError(final String clientError) {
      this.clientError = clientError;
   }

   public void setErrorTime(final Date errorTime) {
      this.errorTime = errorTime;
   }

   public boolean equals(final Object o) {
      if (o == this) {
         return true;
      } else if (!(o instanceof TCoreClientInfo)) {
         return false;
      } else {
         TCoreClientInfo other = (TCoreClientInfo)o;
         if (!other.canEqual(this)) {
            return false;
         } else {
            Object this$client_ip = this.getClient_ip();
            Object other$client_ip = other.getClient_ip();
            if (this$client_ip == null) {
               if (other$client_ip != null) {
                  return false;
               }
            } else if (!this$client_ip.equals(other$client_ip)) {
               return false;
            }

            if (this.getClient_port() != other.getClient_port()) {
               return false;
            } else if (this.getClient_status() != other.getClient_status()) {
               return false;
            } else if (this.getIs_controlled() != other.getIs_controlled()) {
               return false;
            } else {
               Object this$project_id = this.getProject_id();
               Object other$project_id = other.getProject_id();
               if (this$project_id == null) {
                  if (other$project_id != null) {
                     return false;
                  }
               } else if (!this$project_id.equals(other$project_id)) {
                  return false;
               }

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

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

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

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

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

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

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

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

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

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

               return true;
            }
         }
      }
   }

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

   public int hashCode() {
      int PRIME = 59;
      int result = 1;
      Object $client_ip = this.getClient_ip();
      result = result * 59 + ($client_ip == null ? 43 : $client_ip.hashCode());
      result = result * 59 + this.getClient_port();
      result = result * 59 + this.getClient_status();
      result = result * 59 + this.getIs_controlled();
      Object $project_id = this.getProject_id();
      result = result * 59 + ($project_id == null ? 43 : $project_id.hashCode());
      Object $last_opt_time = this.getLast_opt_time();
      result = result * 59 + ($last_opt_time == null ? 43 : $last_opt_time.hashCode());
      Object $last_req_time = this.getLast_req_time();
      result = result * 59 + ($last_req_time == null ? 43 : $last_req_time.hashCode());
      Object $create_time = this.getCreate_time();
      result = result * 59 + ($create_time == null ? 43 : $create_time.hashCode());
      Object $isForbidden = this.getIsForbidden();
      result = result * 59 + ($isForbidden == null ? 43 : $isForbidden.hashCode());
      Object $isTimeout = this.getIsTimeout();
      result = result * 59 + ($isTimeout == null ? 43 : $isTimeout.hashCode());
      Object $desensitizationIsOpen = this.getDesensitizationIsOpen();
      result = result * 59 + ($desensitizationIsOpen == null ? 43 : $desensitizationIsOpen.hashCode());
      Object $databaseUrl = this.getDatabaseUrl();
      result = result * 59 + ($databaseUrl == null ? 43 : $databaseUrl.hashCode());
      Object $databaseUrlStatus = this.getDatabaseUrlStatus();
      result = result * 59 + ($databaseUrlStatus == null ? 43 : $databaseUrlStatus.hashCode());
      Object $clientError = this.getClientError();
      result = result * 59 + ($clientError == null ? 43 : $clientError.hashCode());
      Object $errorTime = this.getErrorTime();
      result = result * 59 + ($errorTime == null ? 43 : $errorTime.hashCode());
      return result;
   }

   public String toString() {
      return "TCoreClientInfo(client_ip=" + this.getClient_ip() + ", client_port=" + this.getClient_port() + ", client_status=" + this.getClient_status() + ", is_controlled=" + this.getIs_controlled() + ", project_id=" + this.getProject_id() + ", last_opt_time=" + this.getLast_opt_time() + ", last_req_time=" + this.getLast_req_time() + ", create_time=" + this.getCreate_time() + ", isForbidden=" + this.getIsForbidden() + ", isTimeout=" + this.getIsTimeout() + ", desensitizationIsOpen=" + this.getDesensitizationIsOpen() + ", databaseUrl=" + this.getDatabaseUrl() + ", databaseUrlStatus=" + this.getDatabaseUrlStatus() + ", clientError=" + this.getClientError() + ", errorTime=" + this.getErrorTime() + ")";
   }
}
