keycloak
公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.authorization.jpa.store.JPAResourceServerStore クラス
org.keycloak.authorization.jpa.store.JPAResourceServerStore の継承関係図
Inheritance graph
org.keycloak.authorization.jpa.store.JPAResourceServerStore 連携図
Collaboration graph

公開メンバ関数

 JPAResourceServerStore (EntityManager entityManager, AuthorizationProvider provider)
 
ResourceServer create (String clientId)
 
void delete (String id)
 
ResourceServer findById (String id)
 

非公開変数類

final EntityManager entityManager
 
final AuthorizationProvider provider
 

詳解

著者
Pedro Igor

構築子と解体子

◆ JPAResourceServerStore()

org.keycloak.authorization.jpa.store.JPAResourceServerStore.JPAResourceServerStore ( EntityManager  entityManager,
AuthorizationProvider  provider 
)
inline
43  {
45  this.provider = provider;
46  }
final AuthorizationProvider provider
Definition: JPAResourceServerStore.java:41
final EntityManager entityManager
Definition: JPAResourceServerStore.java:40

関数詳解

◆ create()

ResourceServer org.keycloak.authorization.jpa.store.JPAResourceServerStore.create ( String  clientId)
inline

org.keycloak.authorization.store.ResourceServerStoreを実装しています。

49  {
50  if (!StorageId.isLocalStorage(clientId)) {
51  throw new ModelException("Creating resource server from federated ClientModel not supported");
52  }
53  ResourceServerEntity entity = new ResourceServerEntity();
54 
55  entity.setId(clientId);
56 
57  this.entityManager.persist(entity);
58 
59  return new ResourceServerAdapter(entity, entityManager, provider.getStoreFactory());
60  }
final AuthorizationProvider provider
Definition: JPAResourceServerStore.java:41
StoreFactory getStoreFactory()
Definition: AuthorizationProvider.java:109
final EntityManager entityManager
Definition: JPAResourceServerStore.java:40

◆ delete()

void org.keycloak.authorization.jpa.store.JPAResourceServerStore.delete ( String  id)
inline

org.keycloak.authorization.store.ResourceServerStoreを実装しています。

63  {
64  ResourceServerEntity entity = entityManager.find(ResourceServerEntity.class, id);
65  if (entity == null) return;
66  //This didn't work, had to loop through and remove each policy individually
67  //entityManager.createNamedQuery("deletePolicyByResourceServer")
68  // .setParameter("serverId", id).executeUpdate();
69 
70  {
71  TypedQuery<String> query = entityManager.createNamedQuery("findPolicyIdByServerId", String.class);
72  query.setParameter("serverId", id);
73  List<String> result = query.getResultList();
74  for (String policyId : result) {
75  entityManager.remove(entityManager.getReference(PolicyEntity.class, policyId));
76  }
77  }
78 
79  {
80  TypedQuery<String> query = entityManager.createNamedQuery("findPermissionTicketIdByServerId", String.class);
81 
82  query.setParameter("serverId", id);
83 
84  List<String> result = query.getResultList();
85  for (String permissionId : result) {
86  entityManager.remove(entityManager.getReference(PermissionTicketEntity.class, permissionId));
87  }
88  }
89 
90  //entityManager.createNamedQuery("deleteResourceByResourceServer")
91  // .setParameter("serverId", id).executeUpdate();
92  {
93  TypedQuery<String> query = entityManager.createNamedQuery("findResourceIdByServerId", String.class);
94 
95  query.setParameter("serverId", id);
96 
97  List<String> result = query.getResultList();
98  for (String resourceId : result) {
99  entityManager.remove(entityManager.getReference(ResourceEntity.class, resourceId));
100  }
101  }
102 
103  //entityManager.createNamedQuery("deleteScopeByResourceServer")
104  // .setParameter("serverId", id).executeUpdate();
105  {
106  TypedQuery<String> query = entityManager.createNamedQuery("findScopeIdByResourceServer", String.class);
107 
108  query.setParameter("serverId", id);
109 
110  List<String> result = query.getResultList();
111  for (String scopeId : result) {
112  entityManager.remove(entityManager.getReference(ScopeEntity.class, scopeId));
113  }
114  }
115 
116  this.entityManager.remove(entity);
117  entityManager.flush();
118  entityManager.detach(entity);
119  }
final EntityManager entityManager
Definition: JPAResourceServerStore.java:40

◆ findById()

ResourceServer org.keycloak.authorization.jpa.store.JPAResourceServerStore.findById ( String  id)
inline

org.keycloak.authorization.store.ResourceServerStoreを実装しています。

122  {
123  ResourceServerEntity entity = entityManager.find(ResourceServerEntity.class, id);
124  if (entity == null) return null;
125  return new ResourceServerAdapter(entity, entityManager, provider.getStoreFactory());
126  }
final AuthorizationProvider provider
Definition: JPAResourceServerStore.java:41
StoreFactory getStoreFactory()
Definition: AuthorizationProvider.java:109
final EntityManager entityManager
Definition: JPAResourceServerStore.java:40

メンバ詳解

◆ entityManager

final EntityManager org.keycloak.authorization.jpa.store.JPAResourceServerStore.entityManager
private

◆ provider

final AuthorizationProvider org.keycloak.authorization.jpa.store.JPAResourceServerStore.provider
private

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