keycloak
公開メンバ関数 | 関数 | 非公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.authorization.client.resource.ProtectedResource クラス
org.keycloak.authorization.client.resource.ProtectedResource 連携図
Collaboration graph

公開メンバ関数

ResourceRepresentation create (final ResourceRepresentation resource)
 
void update (final ResourceRepresentation resource)
 
ResourceRepresentation findById (final String id)
 
ResourceRepresentation findByName (String name)
 
ResourceRepresentation findByName (String name, String ownerId)
 
String [] find (final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
 
String [] findAll ()
 
void delete (final String id)
 
List< ResourceRepresentationfindByUri (String uri)
 
List< ResourceRepresentationfindByMatchingUri (String uri)
 

関数

 ProtectedResource (Http http, ServerConfiguration serverConfiguration, Configuration configuration, TokenCallable pat)
 
public< R > R find (final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final boolean deep, final Integer firstResult, final Integer maxResult)
 

非公開メンバ関数

HttpMethod createFindRequest (String id, String name, String uri, String owner, String type, String scope, boolean matchingUri, boolean deep, Integer firstResult, Integer maxResult)
 

非公開変数類

final Http http
 
ServerConfiguration serverConfiguration
 
final Configuration configuration
 
final TokenCallable pat
 

詳解

An entry point for managing resources using the Protection API.

著者
Pedro Igor

構築子と解体子

◆ ProtectedResource()

org.keycloak.authorization.client.resource.ProtectedResource.ProtectedResource ( Http  http,
ServerConfiguration  serverConfiguration,
Configuration  configuration,
TokenCallable  pat 
)
inlinepackage
45  {
46  this.http = http;
49  this.pat = pat;
50  }
final TokenCallable pat
Definition: ProtectedResource.java:43
ServerConfiguration serverConfiguration
Definition: ProtectedResource.java:41
final Configuration configuration
Definition: ProtectedResource.java:42
final Http http
Definition: ProtectedResource.java:40

関数詳解

◆ create()

ResourceRepresentation org.keycloak.authorization.client.resource.ProtectedResource.create ( final ResourceRepresentation  resource)
inline

Creates a new resource.

引数
resourcethe resource data
戻り値
a RegistrationResponse
58  {
59  Callable<ResourceRepresentation> callable = new Callable<ResourceRepresentation>() {
60  @Override
61  public ResourceRepresentation call() throws Exception {
62  return http.<ResourceRepresentation>post(serverConfiguration.getResourceRegistrationEndpoint())
63  .authorizationBearer(pat.call())
64  .json(JsonSerialization.writeValueAsBytes(resource))
65  .response().json(ResourceRepresentation.class).execute();
66  }
67  };
68  try {
69  return callable.call();
70  } catch (Exception cause) {
71  return Throwables.retryAndWrapExceptionIfNecessary(callable, pat, "Could not create resource", cause);
72  }
73  }
final TokenCallable pat
Definition: ProtectedResource.java:43
ServerConfiguration serverConfiguration
Definition: ProtectedResource.java:41
String getResourceRegistrationEndpoint()
Definition: ServerConfiguration.java:205
String call()
Definition: TokenCallable.java:54
final Http http
Definition: ProtectedResource.java:40

◆ createFindRequest()

HttpMethod org.keycloak.authorization.client.resource.ProtectedResource.createFindRequest ( String  id,
String  name,
String  uri,
String  owner,
String  type,
String  scope,
boolean  matchingUri,
boolean  deep,
Integer  firstResult,
Integer  maxResult 
)
inlineprivate
274  {
276  .authorizationBearer(pat.call())
277  .param("_id", id)
278  .param("name", name)
279  .param("uri", uri)
280  .param("owner", owner)
281  .param("type", type)
282  .param("scope", scope)
283  .param("matchingUri", Boolean.valueOf(matchingUri).toString())
284  .param("deep", Boolean.toString(deep))
285  .param("first", firstResult != null ? firstResult.toString() : null)
286  .param("max", maxResult != null ? maxResult.toString() : null);
287  }
final TokenCallable pat
Definition: ProtectedResource.java:43
public< R > HttpMethod< R > get(String path)
Definition: Http.java:39
ServerConfiguration serverConfiguration
Definition: ProtectedResource.java:41
String getResourceRegistrationEndpoint()
Definition: ServerConfiguration.java:205
String call()
Definition: TokenCallable.java:54
final Http http
Definition: ProtectedResource.java:40

◆ delete()

void org.keycloak.authorization.client.resource.ProtectedResource.delete ( final String  id)
inline

Deletes a resource with the given id.

引数
idthe resource id
237  {
238  Callable callable = new Callable() {
239  @Override
240  public Object call() throws Exception {
242  .authorizationBearer(pat.call())
243  .execute();
244  return null;
245  }
246  };
247  try {
248  callable.call();
249  } catch (Exception cause) {
250  Throwables.retryAndWrapExceptionIfNecessary(callable, pat, "", cause);
251  }
252  }
final TokenCallable pat
Definition: ProtectedResource.java:43
ServerConfiguration serverConfiguration
Definition: ProtectedResource.java:41
String getResourceRegistrationEndpoint()
Definition: ServerConfiguration.java:205
String call()
Definition: TokenCallable.java:54
final Http http
Definition: ProtectedResource.java:40
public< R > HttpMethod< R > delete(String path)
Definition: Http.java:51

◆ find() [1/2]

String [] org.keycloak.authorization.client.resource.ProtectedResource.find ( final String  id,
final String  name,
final String  uri,
final String  owner,
final String  type,
final String  scope,
final boolean  matchingUri,
final Integer  firstResult,
final Integer  maxResult 
)
inline

Query the server for any resource with the matching arguments.

引数
idthe resource id
namethe resource name
urithe resource uri
ownerthe resource owner
typethe resource type
scopethe resource scope
matchingUrithe resource uri. Use this parameter to lookup a resource that best match the given uri
firstResultthe position of the first resource to retrieve
maxResultthe maximum number of resources to retrieve
戻り値
an array of strings with the resource ids
171  {
172  Callable<String[]> callable = new Callable<String[]>() {
173  @Override
174  public String[] call() throws Exception {
175  return (String[]) createFindRequest(id, name, uri, owner, type, scope, matchingUri, false, firstResult, maxResult).response().json(String[].class).execute();
176  }
177  };
178  try {
179  return callable.call();
180  } catch (Exception cause) {
181  return Throwables.retryAndWrapExceptionIfNecessary(callable, pat, "Could not find resource", cause);
182  }
183  }
final TokenCallable pat
Definition: ProtectedResource.java:43
HttpMethod createFindRequest(String id, String name, String uri, String owner, String type, String scope, boolean matchingUri, boolean deep, Integer firstResult, Integer maxResult)
Definition: ProtectedResource.java:274
HttpMethodResponse< R > response
Definition: HttpMethod.java:50

◆ find() [2/2]

public<R> R org.keycloak.authorization.client.resource.ProtectedResource.find ( final String  id,
final String  name,
final String  uri,
final String  owner,
final String  type,
final String  scope,
final boolean  matchingUri,
final boolean  deep,
final Integer  firstResult,
final Integer  maxResult 
)
inlinepackage

Query the server for any resource with the matching arguments.

引数
idthe resource id
namethe resource name
urithe resource uri
ownerthe resource owner
typethe resource type
scopethe resource scope
matchingUrithe resource uri. Use this parameter to lookup a resource that best match the given uri
deepif the result should be a list of resource representations with details about the resource. If false, only ids are returned
firstResultthe position of the first resource to retrieve
maxResultthe maximum number of resources to retrieve
戻り値
a list of resource representations or an array of strings representing resource ids, depending on the generic type
200  {
201  if (deep) {
202  Callable<List<ResourceRepresentation>> callable = new Callable<List<ResourceRepresentation>>() {
203  @Override
204  public List<ResourceRepresentation> call() {
205  return (List<ResourceRepresentation>) createFindRequest(id, name, uri, owner, type, scope, matchingUri, deep, firstResult, maxResult).response().json(new TypeReference<List<ResourceRepresentation>>() {
206  }).execute();
207  }
208  };
209  try {
210  return (R) callable.call();
211  } catch (Exception cause) {
212  return (R) Throwables.retryAndWrapExceptionIfNecessary(callable, pat, "Could not find resource", cause);
213  }
214  }
215 
216  return (R) find(id, name, uri, owner, type, scope, matchingUri, firstResult, maxResult);
217  }
final TokenCallable pat
Definition: ProtectedResource.java:43
HttpMethod createFindRequest(String id, String name, String uri, String owner, String type, String scope, boolean matchingUri, boolean deep, Integer firstResult, Integer maxResult)
Definition: ProtectedResource.java:274
String [] find(final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
Definition: ProtectedResource.java:171
HttpMethodResponse< R > response
Definition: HttpMethod.java:50

◆ findAll()

String [] org.keycloak.authorization.client.resource.ProtectedResource.findAll ( )
inline

Query the server for all resources.

戻り値
an array of strings with the resource ids
224  {
225  try {
226  return find(null,null , null, null, null, null, false, null, null);
227  } catch (Exception cause) {
228  throw Throwables.handleWrapException("Could not find resource", cause);
229  }
230  }
String [] find(final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
Definition: ProtectedResource.java:171

◆ findById()

ResourceRepresentation org.keycloak.authorization.client.resource.ProtectedResource.findById ( final String  id)
inline

Query the server for a resource given its id.

引数
idthe resource id
戻り値
a ResourceRepresentation
108  {
109  Callable<ResourceRepresentation> callable = new Callable<ResourceRepresentation>() {
110  @Override
111  public ResourceRepresentation call() throws Exception {
112  return http.<ResourceRepresentation>get(serverConfiguration.getResourceRegistrationEndpoint() + "/" + id)
113  .authorizationBearer(pat.call())
114  .response().json(ResourceRepresentation.class).execute();
115  }
116  };
117  try {
118  return callable.call();
119  } catch (Exception cause) {
120  return Throwables.retryAndWrapExceptionIfNecessary(callable, pat, "Could not find resource", cause);
121  }
122  }
final TokenCallable pat
Definition: ProtectedResource.java:43
ServerConfiguration serverConfiguration
Definition: ProtectedResource.java:41
String getResourceRegistrationEndpoint()
Definition: ServerConfiguration.java:205
String call()
Definition: TokenCallable.java:54
final Http http
Definition: ProtectedResource.java:40

◆ findByMatchingUri()

List<ResourceRepresentation> org.keycloak.authorization.client.resource.ProtectedResource.findByMatchingUri ( String  uri)
inline

Returns a list of resources that best matches the given

uri

. This method queries the server for resources whose ResourceRepresentation#uri best matches the given

uri

.

引数
urithe resource uri to match
戻り値
a list of resources
270  {
271  return find(null, null, uri, null, null, null, true, true,null, null);
272  }
String [] find(final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
Definition: ProtectedResource.java:171

◆ findByName() [1/2]

ResourceRepresentation org.keycloak.authorization.client.resource.ProtectedResource.findByName ( String  name)
inline

Query the server for a resource given its name where the owner is the resource server itself.

引数
namethe resource name
戻り値
a ResourceRepresentation
130  {
131  List<ResourceRepresentation> representations = find(null, name, null, configuration.getResource(), null, null, false, true, null, null);
132 
133  if (representations.isEmpty()) {
134  return null;
135  }
136 
137  return representations.get(0);
138  }
String getResource()
Definition: BaseAdapterConfig.java:75
final Configuration configuration
Definition: ProtectedResource.java:42
String [] find(final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
Definition: ProtectedResource.java:171

◆ findByName() [2/2]

ResourceRepresentation org.keycloak.authorization.client.resource.ProtectedResource.findByName ( String  name,
String  ownerId 
)
inline

Query the server for a resource given its name and a given ownerId.

引数
namethe resource name
ownerIdthe owner id
戻り値
a ResourceRepresentation
147  {
148  List<ResourceRepresentation> representations = find(null, name, null, ownerId, null, null, false, true,null, null);
149 
150  if (representations.isEmpty()) {
151  return null;
152  }
153 
154  return representations.get(0);
155  }
String [] find(final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
Definition: ProtectedResource.java:171

◆ findByUri()

List<ResourceRepresentation> org.keycloak.authorization.client.resource.ProtectedResource.findByUri ( String  uri)
inline

Query the server for all resources with the given uri.

引数
urithe resource uri
259  {
260  return find(null, null, uri, null, null, null, false, true, null, null);
261  }
String [] find(final String id, final String name, final String uri, final String owner, final String type, final String scope, final boolean matchingUri, final Integer firstResult, final Integer maxResult)
Definition: ProtectedResource.java:171

◆ update()

void org.keycloak.authorization.client.resource.ProtectedResource.update ( final ResourceRepresentation  resource)
inline

Updates a resource.

引数
resourcethe resource data
戻り値
a RegistrationResponse
81  {
82  if (resource.getId() == null) {
83  throw new IllegalArgumentException("You must provide the resource id");
84  }
85 
86  Callable callable = new Callable() {
87  @Override
88  public Object call() throws Exception {
89  http.<ResourceRepresentation>put(serverConfiguration.getResourceRegistrationEndpoint() + "/" + resource.getId())
90  .authorizationBearer(pat.call())
91  .json(JsonSerialization.writeValueAsBytes(resource)).execute();
92  return null;
93  }
94  };
95  try {
96  callable.call();
97  } catch (Exception cause) {
98  Throwables.retryAndWrapExceptionIfNecessary(callable, pat, "Could not update resource", cause);
99  }
100  }
final TokenCallable pat
Definition: ProtectedResource.java:43
ServerConfiguration serverConfiguration
Definition: ProtectedResource.java:41
String getResourceRegistrationEndpoint()
Definition: ServerConfiguration.java:205
String call()
Definition: TokenCallable.java:54
final Http http
Definition: ProtectedResource.java:40

メンバ詳解

◆ configuration

final Configuration org.keycloak.authorization.client.resource.ProtectedResource.configuration
private

◆ http

final Http org.keycloak.authorization.client.resource.ProtectedResource.http
private

◆ pat

final TokenCallable org.keycloak.authorization.client.resource.ProtectedResource.pat
private

◆ serverConfiguration

ServerConfiguration org.keycloak.authorization.client.resource.ProtectedResource.serverConfiguration
private

このクラス詳解は次のファイルから抽出されました: