package com.l7tech.identity.ldap;

import com.l7tech.util.XmlSafe;
import java.io.Serializable;

@XmlSafe
public class UserMappingConfig implements Serializable {
   private String objClass;
   private String nameAttrName;
   private String loginAttrName;
   private String passwdAttrName;
   private String firstNameAttrName;
   private String lastNameAttrName;
   private String emailNameAttrName;
   private String kerberosAttrName;
   private String kerberosEnterpriseAttrName;
   private String userCertAttrName;
   private PasswdStrategy passwdType;
   static final long serialVersionUID = 3020166367870146609L;

   @XmlSafe
   public String getObjClass() {
      return this.objClass;
   }

   @XmlSafe
   public void setObjClass(String var1) {
      this.objClass = var1;
   }

   @XmlSafe
   public String getNameAttrName() {
      return this.nameAttrName;
   }

   @XmlSafe
   public void setNameAttrName(String var1) {
      this.nameAttrName = var1;
   }

   @XmlSafe
   public String getLoginAttrName() {
      return this.loginAttrName;
   }

   @XmlSafe
   public void setLoginAttrName(String var1) {
      this.loginAttrName = var1;
   }

   @XmlSafe
   public String getPasswdAttrName() {
      return this.passwdAttrName;
   }

   @XmlSafe
   public void setPasswdAttrName(String var1) {
      this.passwdAttrName = var1;
   }

   @XmlSafe
   public String getFirstNameAttrName() {
      return this.firstNameAttrName;
   }

   @XmlSafe
   public void setFirstNameAttrName(String var1) {
      this.firstNameAttrName = var1;
   }

   @XmlSafe
   public String getLastNameAttrName() {
      return this.lastNameAttrName;
   }

   @XmlSafe
   public void setLastNameAttrName(String var1) {
      this.lastNameAttrName = var1;
   }

   @XmlSafe
   public String getEmailNameAttrName() {
      return this.emailNameAttrName;
   }

   @XmlSafe
   public void setEmailNameAttrName(String var1) {
      this.emailNameAttrName = var1;
   }

   @XmlSafe
   public String getKerberosAttrName() {
      return this.kerberosAttrName;
   }

   @XmlSafe
   public void setKerberosAttrName(String var1) {
      this.kerberosAttrName = var1;
   }

   @XmlSafe
   public String getKerberosEnterpriseAttrName() {
      return this.kerberosEnterpriseAttrName;
   }

   @XmlSafe
   public void setKerberosEnterpriseAttrName(String var1) {
      this.kerberosEnterpriseAttrName = var1;
   }

   @XmlSafe
   public PasswdStrategy getPasswdType() {
      return this.passwdType;
   }

   @XmlSafe
   public void setPasswdType(PasswdStrategy var1) {
      this.passwdType = var1;
   }

   @XmlSafe
   public String getUserCertAttrName() {
      return this.userCertAttrName;
   }

   @XmlSafe
   public void setUserCertAttrName(String var1) {
      this.userCertAttrName = var1;
   }

   @Override
   public boolean equals(Object var1) {
      if (this == var1) {
         return true;
      } else if (!(var1 instanceof UserMappingConfig var2)) {
         return false;
      } else if (this.kerberosAttrName != null ? this.kerberosAttrName.equals(var2.kerberosAttrName) : var2.kerberosAttrName == null) {
         if (this.kerberosEnterpriseAttrName != null
            ? this.kerberosEnterpriseAttrName.equals(var2.kerberosEnterpriseAttrName)
            : var2.kerberosEnterpriseAttrName == null) {
            if (this.userCertAttrName != null ? this.userCertAttrName.equals(var2.userCertAttrName) : var2.userCertAttrName == null) {
               if (this.emailNameAttrName != null ? this.emailNameAttrName.equals(var2.emailNameAttrName) : var2.emailNameAttrName == null) {
                  if (this.firstNameAttrName != null ? this.firstNameAttrName.equals(var2.firstNameAttrName) : var2.firstNameAttrName == null) {
                     if (this.lastNameAttrName != null ? this.lastNameAttrName.equals(var2.lastNameAttrName) : var2.lastNameAttrName == null) {
                        if (this.loginAttrName != null ? this.loginAttrName.equals(var2.loginAttrName) : var2.loginAttrName == null) {
                           if (this.nameAttrName != null ? this.nameAttrName.equals(var2.nameAttrName) : var2.nameAttrName == null) {
                              if (this.objClass != null ? this.objClass.equals(var2.objClass) : var2.objClass == null) {
                                 if (this.passwdAttrName != null ? this.passwdAttrName.equals(var2.passwdAttrName) : var2.passwdAttrName == null) {
                                    return this.passwdType != null ? this.passwdType.equals(var2.passwdType) : var2.passwdType == null;
                                 } else {
                                    return false;
                                 }
                              } else {
                                 return false;
                              }
                           } else {
                              return false;
                           }
                        } else {
                           return false;
                        }
                     } else {
                        return false;
                     }
                  } else {
                     return false;
                  }
               } else {
                  return false;
               }
            } else {
               return false;
            }
         } else {
            return false;
         }
      } else {
         return false;
      }
   }

   @Override
   public int hashCode() {
      int var1 = this.objClass != null ? this.objClass.hashCode() : 0;
      var1 = 29 * var1 + (this.nameAttrName != null ? this.nameAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.loginAttrName != null ? this.loginAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.passwdAttrName != null ? this.passwdAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.firstNameAttrName != null ? this.firstNameAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.lastNameAttrName != null ? this.lastNameAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.emailNameAttrName != null ? this.emailNameAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.kerberosAttrName != null ? this.kerberosAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.kerberosEnterpriseAttrName != null ? this.kerberosEnterpriseAttrName.hashCode() : 0);
      var1 = 29 * var1 + (this.userCertAttrName != null ? this.userCertAttrName.hashCode() : 0);
      return 29 * var1 + (this.passwdType != null ? this.passwdType.hashCode() : 0);
   }
}
