package com.l7tech.identity;

import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.PersistentEntity;
import java.io.Serializable;

public abstract class GroupMembership implements PersistentEntity, Serializable {
   protected Goid thisGroupProviderGoid;
   protected Goid memberUserId;
   static final long serialVersionUID = -467540036334121362L;

   public abstract Goid getThisGroupId();

   public abstract void setThisGroupId(Goid var1);

   @Deprecated
   public boolean isUnsaved() {
      return false;
   }

   public Goid getMemberUserId() {
      return this.memberUserId;
   }

   public void setMemberUserId(Goid var1) {
      this.memberUserId = var1;
   }

   public Goid getThisGroupProviderGoid() {
      return this.thisGroupProviderGoid;
   }

   public void setThisGroupProviderGoid(Goid var1) {
      this.thisGroupProviderGoid = var1;
   }

   @Override
   public boolean equals(Object var1) {
      if (this == var1) {
         return true;
      }

      if (var1 == null || this.getClass() != var1.getClass()) {
         return false;
      }

      if (!super.equals(var1)) {
         return false;
      }

      GroupMembership var2 = (GroupMembership)var1;
      return !this.thisGroupProviderGoid.equals(var2.thisGroupProviderGoid) ? false : this.memberUserId.equals(var2.memberUserId);
   }

   @Override
   public int hashCode() {
      int var1 = super.hashCode();
      var1 = 29 * var1 + this.thisGroupProviderGoid.hashCode();
      return 29 * var1 + this.memberUserId.hashCode();
   }
}
