001 002package io.vrap.rmf.base.client.oauth2; 003 004import java.util.Objects; 005 006public class ClientCredentialsBuilder { 007 private String clientId; 008 private String clientSecret; 009 private String scopes; 010 011 public ClientCredentialsBuilder() { 012 } 013 014 public ClientCredentialsBuilder withClientId(final String clientId) { 015 this.clientId = clientId; 016 return this; 017 } 018 019 public ClientCredentialsBuilder withClientSecret(final String clientSecret) { 020 this.clientSecret = clientSecret; 021 return this; 022 } 023 024 public ClientCredentialsBuilder withScopes(final String scopes) { 025 this.scopes = scopes; 026 return this; 027 } 028 029 public ClientCredentialsImpl build() { 030 Objects.requireNonNull(this.clientId); 031 Objects.requireNonNull(this.clientSecret); 032 return new ClientCredentialsImpl(clientId, clientSecret, scopes); 033 } 034}