package com.airlock.iam.oauth2.domain.model.client;

import com.airlock.iam.oauth2.api.domain.model.OAuth2ClientId;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.Objects;
import java.util.Optional;

public final class OAuth2ClientSideCredentials {
   private final OAuth2ClientId clientId;
   private final Optional<String> clientSecret;

   public OAuth2ClientSideCredentials(OAuth2ClientId clientId, Optional<String> clientSecret) {
      this.clientId = Objects.requireNonNull(clientId);
      this.clientSecret = Objects.requireNonNull(clientSecret);
   }

   @SuppressFBWarnings(justification = "generated code")
   public OAuth2ClientId clientId() {
      return this.clientId;
   }

   @SuppressFBWarnings(justification = "generated code")
   public Optional<String> clientSecret() {
      return this.clientSecret;
   }
}
