All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.messenger4j.webhook.event.ReferralEvent Maven / Gradle / Ivy

// Generated by delombok at Tue May 07 22:31:27 CEST 2019
package com.github.messenger4j.webhook.event;

import com.github.messenger4j.webhook.event.common.Referral;
import java.time.Instant;
import lombok.NonNull;

/**
 * @author Max Grabenhorst
 * @since 1.0.0
 */
public final class ReferralEvent extends BaseEvent {
  private final Referral referral;

  public ReferralEvent(
      @NonNull String senderId,
      @NonNull String recipientId,
      @NonNull Instant timestamp,
      @NonNull Referral referral) {
    super(senderId, recipientId, timestamp);
    if (senderId == null) {
      throw new java.lang.IllegalArgumentException("senderId is marked @NonNull but is null");
    }
    if (recipientId == null) {
      throw new java.lang.IllegalArgumentException("recipientId is marked @NonNull but is null");
    }
    if (timestamp == null) {
      throw new java.lang.IllegalArgumentException("timestamp is marked @NonNull but is null");
    }
    if (referral == null) {
      throw new java.lang.IllegalArgumentException("referral is marked @NonNull but is null");
    }
    this.referral = referral;
  }

  public Referral referral() {
    return referral;
  }

  @java.lang.Override
  @java.lang.SuppressWarnings("all")
  public java.lang.String toString() {
    return "ReferralEvent(super=" + super.toString() + ", referral=" + this.referral + ")";
  }

  @java.lang.Override
  @java.lang.SuppressWarnings("all")
  public boolean equals(final java.lang.Object o) {
    if (o == this) return true;
    if (!(o instanceof ReferralEvent)) return false;
    final ReferralEvent other = (ReferralEvent) o;
    if (!other.canEqual((java.lang.Object) this)) return false;
    if (!super.equals(o)) return false;
    final java.lang.Object this$referral = this.referral;
    final java.lang.Object other$referral = other.referral;
    if (this$referral == null ? other$referral != null : !this$referral.equals(other$referral))
      return false;
    return true;
  }

  @java.lang.SuppressWarnings("all")
  protected boolean canEqual(final java.lang.Object other) {
    return other instanceof ReferralEvent;
  }

  @java.lang.Override
  @java.lang.SuppressWarnings("all")
  public int hashCode() {
    final int PRIME = 59;
    int result = super.hashCode();
    final java.lang.Object $referral = this.referral;
    result = result * PRIME + ($referral == null ? 43 : $referral.hashCode());
    return result;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy