mitreid-connect
公開メンバ関数 | 非公開メンバ関数 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.mitre.uma.service.impl.DefaultResourceSetService クラス
org.mitre.uma.service.impl.DefaultResourceSetService の継承関係図
Inheritance graph
org.mitre.uma.service.impl.DefaultResourceSetService 連携図
Collaboration graph

公開メンバ関数

ResourceSet saveNew (ResourceSet rs)
 
ResourceSet getById (Long id)
 
ResourceSet update (ResourceSet oldRs, ResourceSet newRs)
 
void remove (ResourceSet rs)
 
Collection< ResourceSetgetAllForOwner (String owner)
 
Collection< ResourceSetgetAllForOwnerAndClient (String owner, String clientId)
 
Collection< ResourceSetgetAllForClient (ClientDetailsEntity client)
 

非公開メンバ関数

boolean checkScopeConsistency (ResourceSet rs)
 

非公開変数類

ResourceSetRepository repository
 
OAuth2TokenRepository tokenRepository
 
PermissionRepository ticketRepository
 

静的非公開変数類

static final Logger logger = LoggerFactory.getLogger(DefaultResourceSetService.class)
 

詳解

著者
jricher

関数詳解

◆ checkScopeConsistency()

boolean org.mitre.uma.service.impl.DefaultResourceSetService.checkScopeConsistency ( ResourceSet  rs)
inlineprivate
127  {
128  if (rs.getPolicies() == null) {
129  // nothing to check, no problem!
130  return true;
131  }
132  for (Policy policy : rs.getPolicies()) {
133  if (!rs.getScopes().containsAll(policy.getScopes())) {
134  return false;
135  }
136  }
137  // we've checked everything, we're good
138  return true;
139  }

◆ getAllForClient()

Collection<ResourceSet> org.mitre.uma.service.impl.DefaultResourceSetService.getAllForClient ( ClientDetailsEntity  client)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

145  {
146  return repository.getAllForClient(client.getClientId());
147  }
Collection< ResourceSet > getAllForClient(String clientId)
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47

◆ getAllForOwner()

Collection<ResourceSet> org.mitre.uma.service.impl.DefaultResourceSetService.getAllForOwner ( String  owner)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

118  {
119  return repository.getAllForOwner(owner);
120  }
Collection< ResourceSet > getAllForOwner(String owner)
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47

◆ getAllForOwnerAndClient()

Collection<ResourceSet> org.mitre.uma.service.impl.DefaultResourceSetService.getAllForOwnerAndClient ( String  owner,
String  clientId 
)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

123  {
124  return repository.getAllForOwnerAndClient(owner, clientId);
125  }
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47
Collection< ResourceSet > getAllForOwnerAndClient(String owner, String clientId)

◆ getById()

ResourceSet org.mitre.uma.service.impl.DefaultResourceSetService.getById ( Long  id)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

73  {
74  return repository.getById(id);
75  }
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47

◆ remove()

void org.mitre.uma.service.impl.DefaultResourceSetService.remove ( ResourceSet  rs)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

101  {
102  // find all the access tokens issued against this resource set and revoke them
103  Collection<OAuth2AccessTokenEntity> tokens = tokenRepository.getAccessTokensForResourceSet(rs);
104  for (OAuth2AccessTokenEntity token : tokens) {
106  }
107 
108  // find all outstanding tickets issued against this resource set and revoke them too
109  Collection<PermissionTicket> tickets = ticketRepository.getPermissionTicketsForResourceSet(rs);
110  for (PermissionTicket ticket : tickets) {
111  ticketRepository.remove(ticket);
112  }
113 
114  repository.remove(rs);
115  }
PermissionRepository ticketRepository
Definition: DefaultResourceSetService.java:53
Set< OAuth2AccessTokenEntity > getAccessTokensForResourceSet(ResourceSet rs)
Collection< PermissionTicket > getPermissionTicketsForResourceSet(ResourceSet rs)
void removeAccessToken(OAuth2AccessTokenEntity accessToken)
void remove(PermissionTicket ticket)
OAuth2TokenRepository tokenRepository
Definition: DefaultResourceSetService.java:50
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47

◆ saveNew()

ResourceSet org.mitre.uma.service.impl.DefaultResourceSetService.saveNew ( ResourceSet  rs)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

56  {
57 
58  if (rs.getId() != null) {
59  throw new IllegalArgumentException("Can't save a new resource set with an ID already set to it.");
60  }
61 
62  if (!checkScopeConsistency(rs)) {
63  throw new IllegalArgumentException("Can't save a resource set with inconsistent claims.");
64  }
65 
66  ResourceSet saved = repository.save(rs);
67 
68  return saved;
69 
70  }
boolean checkScopeConsistency(ResourceSet rs)
Definition: DefaultResourceSetService.java:127
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47

◆ update()

ResourceSet org.mitre.uma.service.impl.DefaultResourceSetService.update ( ResourceSet  oldRs,
ResourceSet  newRs 
)
inline

org.mitre.uma.service.ResourceSetServiceを実装しています。

78  {
79 
80  if (oldRs.getId() == null || newRs.getId() == null
81  || !oldRs.getId().equals(newRs.getId())) {
82 
83  throw new IllegalArgumentException("Resource set IDs mismatched");
84 
85  }
86 
87  if (!checkScopeConsistency(newRs)) {
88  throw new IllegalArgumentException("Can't save a resource set with inconsistent claims.");
89  }
90 
91  newRs.setOwner(oldRs.getOwner()); // preserve the owner tag across updates
92  newRs.setClientId(oldRs.getClientId()); // preserve the client id across updates
93 
94  ResourceSet saved = repository.save(newRs);
95 
96  return saved;
97 
98  }
boolean checkScopeConsistency(ResourceSet rs)
Definition: DefaultResourceSetService.java:127
ResourceSetRepository repository
Definition: DefaultResourceSetService.java:47

メンバ詳解

◆ logger

final Logger org.mitre.uma.service.impl.DefaultResourceSetService.logger = LoggerFactory.getLogger(DefaultResourceSetService.class)
staticprivate

◆ repository

ResourceSetRepository org.mitre.uma.service.impl.DefaultResourceSetService.repository
private

◆ ticketRepository

PermissionRepository org.mitre.uma.service.impl.DefaultResourceSetService.ticketRepository
private

◆ tokenRepository

OAuth2TokenRepository org.mitre.uma.service.impl.DefaultResourceSetService.tokenRepository
private

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