diff --git a/security/src/main/java/org/genesys/blocks/oauth/model/OAuthClient.java b/security/src/main/java/org/genesys/blocks/oauth/model/OAuthClient.java index aa0433685b4db0233f3ada67c238e56a054b4bc1..7529e64045547defeb268bed50e711326392ebcf 100644 --- a/security/src/main/java/org/genesys/blocks/oauth/model/OAuthClient.java +++ b/security/src/main/java/org/genesys/blocks/oauth/model/OAuthClient.java @@ -38,6 +38,7 @@ import javax.persistence.PreUpdate; import javax.persistence.Table; import javax.persistence.Transient; +import com.fasterxml.jackson.annotation.JsonProperty; import org.apache.commons.lang3.StringUtils; import org.genesys.blocks.model.Copyable; import org.genesys.blocks.model.JsonViews; @@ -416,6 +417,7 @@ public class OAuthClient extends AclSid implements ClientDetails, Copyable getScope() { return scopes; @@ -426,6 +428,7 @@ public class OAuthClient extends AclSid implements ClientDetails, Copyable scopes) { this.scopes = scopes; } diff --git a/security/src/main/java/org/genesys/blocks/oauth/service/OAuthClientDetailsService.java b/security/src/main/java/org/genesys/blocks/oauth/service/OAuthClientDetailsService.java index 6b0d260da7c49bcf1dc385299d6fe4bb991d0c12..665fb23ab8c79347be74047f8bce542e034bc6e4 100644 --- a/security/src/main/java/org/genesys/blocks/oauth/service/OAuthClientDetailsService.java +++ b/security/src/main/java/org/genesys/blocks/oauth/service/OAuthClientDetailsService.java @@ -18,6 +18,8 @@ package org.genesys.blocks.oauth.service; import java.util.List; import org.genesys.blocks.oauth.model.OAuthClient; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; import org.springframework.security.oauth2.provider.ClientDetailsService; /** @@ -32,6 +34,13 @@ public interface OAuthClientDetailsService extends ClientDetailsService { */ List listClientDetails(); + /** + * List client details. + * + * @return page with Client details + */ + Page listClientDetails(Pageable pageable); + /** * Gets the client. * diff --git a/security/src/main/java/org/genesys/blocks/oauth/service/OAuthServiceImpl.java b/security/src/main/java/org/genesys/blocks/oauth/service/OAuthServiceImpl.java index 3a897352be55a2f60f701f5793ef96071ef8034b..5bc6644fbeb4fe56ca3c0f789d8a35a8ec5d7e70 100644 --- a/security/src/main/java/org/genesys/blocks/oauth/service/OAuthServiceImpl.java +++ b/security/src/main/java/org/genesys/blocks/oauth/service/OAuthServiceImpl.java @@ -40,7 +40,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; +import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.crypto.password.PasswordEncoder; @@ -558,6 +560,11 @@ public class OAuthServiceImpl implements OAuthClientDetailsService, OAuthTokenSt return oauthClientRepository.findAll(new Sort("clientId")); } + @Override + public Page listClientDetails(Pageable pageable) { + return oauthClientRepository.findAll(pageable); + } + /* * (non-Javadoc) * @see org.genesys.blocks.oauth.service.OAuthTokenStoreService#