package com.l7tech.identity.ldap;

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

@XmlSafe
public class GroupMappingConfig implements Serializable {
   private String objClass;
   private String nameAttrName;
   private String memberAttrName;
   private MemberStrategy memberStrategy;
   static final long serialVersionUID = 6476436644882232162L;

   @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 getMemberAttrName() {
      return this.memberAttrName;
   }

   @XmlSafe
   public void setMemberAttrName(String var1) {
      this.memberAttrName = var1;
   }

   @XmlSafe
   public MemberStrategy getMemberStrategy() {
      return this.memberStrategy;
   }

   @XmlSafe
   public void setMemberStrategy(MemberStrategy var1) {
      this.memberStrategy = var1;
   }

   @XmlSafe
   @Override
   public boolean equals(Object var1) {
      if (this == var1) {
         return true;
      } else if (!(var1 instanceof GroupMappingConfig var2)) {
         return false;
      } else if (this.memberAttrName != null ? this.memberAttrName.equals(var2.memberAttrName) : var2.memberAttrName == null) {
         if (this.memberStrategy != null ? this.memberStrategy.equals(var2.memberStrategy) : var2.memberStrategy == null) {
            if (this.nameAttrName != null ? this.nameAttrName.equals(var2.nameAttrName) : var2.nameAttrName == null) {
               return this.objClass != null ? this.objClass.equals(var2.objClass) : var2.objClass == null;
            } else {
               return false;
            }
         } else {
            return false;
         }
      } else {
         return false;
      }
   }

   @XmlSafe
   @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.memberAttrName != null ? this.memberAttrName.hashCode() : 0);
      return 29 * var1 + (this.memberStrategy != null ? this.memberStrategy.hashCode() : 0);
   }
}
