io.gravitee.am.model.Client Maven / Gradle / Ivy
/**
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.gravitee.am.model;
import java.util.*;
/**
* @author David BRASSELY (david.brassely at graviteesource.com)
* @author GraviteeSource Team
*/
public class Client {
public final static int DEFAULT_ACCESS_TOKEN_VALIDITY_SECONDS = 7200;
public final static int DEFAULT_REFRESH_TOKEN_VALIDITY_SECONDS = 14400;
public final static int DEFAULT_ID_TOKEN_VALIDITY_SECONDS = 14400;
public final static List AUTHORIZED_GRANT_TYPES = Arrays.asList(
GrantType.AUTHORIZATION_CODE, GrantType.CLIENT_CREDENTIALS, GrantType.IMPLICIT,
GrantType.PASSWORD, GrantType.REFRESH_TOKEN);
private String id;
private String clientId;
private String clientSecret;
private List redirectUris;
private List authorizedGrantTypes = AUTHORIZED_GRANT_TYPES;
private List scopes;
private List autoApproveScopes;
private int accessTokenValiditySeconds = DEFAULT_ACCESS_TOKEN_VALIDITY_SECONDS;
private int refreshTokenValiditySeconds = DEFAULT_REFRESH_TOKEN_VALIDITY_SECONDS;
private int idTokenValiditySeconds = DEFAULT_ID_TOKEN_VALIDITY_SECONDS;
private Map idTokenCustomClaims;
/**
* Security domain associated to the client
*/
private String domain;
/**
* Client enabled.
*/
private boolean enabled;
/**
* The Client creation date
*/
private Date createdAt;
/**
* The Client last updated date
*/
private Date updatedAt;
private Set identities;
private String certificate;
private boolean enhanceScopesWithUserPermissions;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getClientId() {
return clientId;
}
public void setClientId(String clientId) {
this.clientId = clientId;
}
public String getClientSecret() {
return clientSecret;
}
public void setClientSecret(String clientSecret) {
this.clientSecret = clientSecret;
}
public List getRedirectUris() {
return redirectUris;
}
public void setRedirectUris(List redirectUris) {
this.redirectUris = redirectUris;
}
public List getAuthorizedGrantTypes() {
return authorizedGrantTypes;
}
public void setAuthorizedGrantTypes(List authorizedGrantTypes) {
this.authorizedGrantTypes = authorizedGrantTypes;
}
public List getScopes() {
return scopes;
}
public void setScopes(List scopes) {
this.scopes = scopes;
}
public List getAutoApproveScopes() {
return autoApproveScopes;
}
public void setAutoApproveScopes(List autoApproveScopes) {
this.autoApproveScopes = autoApproveScopes;
}
public int getAccessTokenValiditySeconds() {
return accessTokenValiditySeconds;
}
public void setAccessTokenValiditySeconds(int accessTokenValiditySeconds) {
this.accessTokenValiditySeconds = accessTokenValiditySeconds;
}
public int getRefreshTokenValiditySeconds() {
return refreshTokenValiditySeconds;
}
public void setRefreshTokenValiditySeconds(int refreshTokenValiditySeconds) {
this.refreshTokenValiditySeconds = refreshTokenValiditySeconds;
}
public String getDomain() {
return domain;
}
public void setDomain(String domain) {
this.domain = domain;
}
public boolean isEnabled() {
return enabled;
}
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Set getIdentities() {
return identities;
}
public void setIdentities(Set identities) {
this.identities = identities;
}
public int getIdTokenValiditySeconds() {
return idTokenValiditySeconds;
}
public void setIdTokenValiditySeconds(int idTokenValiditySeconds) {
this.idTokenValiditySeconds = idTokenValiditySeconds;
}
public Map getIdTokenCustomClaims() {
return idTokenCustomClaims;
}
public void setIdTokenCustomClaims(Map idTokenCustomClaims) {
this.idTokenCustomClaims = idTokenCustomClaims;
}
public String getCertificate() {
return certificate;
}
public void setCertificate(String certificate) {
this.certificate = certificate;
}
public boolean isEnhanceScopesWithUserPermissions() {
return enhanceScopesWithUserPermissions;
}
public void setEnhanceScopesWithUserPermissions(boolean enhanceScopesWithUserPermissions) {
this.enhanceScopesWithUserPermissions = enhanceScopesWithUserPermissions;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Client client = (Client) o;
return clientId.equals(client.clientId);
}
@Override
public int hashCode() {
return clientId.hashCode();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy