package com.airlock.iam.transactionapproval.domain.model.authenticateduser;

import com.airlock.iam.base.api.domain.model.user.UserId;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.Objects;
import lombok.NonNull;

public record AuthenticatedUser(@NonNull UserId id) {
   @SuppressFBWarnings(justification = "generated code")
   public AuthenticatedUser {
      if (id == null) {
         throw new NullPointerException("id is marked non-null but is null");
      }
   }

   public boolean hasSameId(AuthenticatedUser other) {
      return Objects.equals(this.id, other.id());
   }
}
