keycloak-service
公開メンバ関数 | 非公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.partialimport.PartialImportManager クラス
org.keycloak.partialimport.PartialImportManager 連携図
Collaboration graph

公開メンバ関数

 PartialImportManager (PartialImportRepresentation rep, KeycloakSession session, RealmModel realm, AdminEventBuilder adminEvent)
 
Response saveResources ()
 

非公開メンバ関数

void fireCreatedEvent (PartialImportResult result)
 
void fireUpdateEvent (PartialImportResult result)
 

非公開変数類

final List< PartialImportpartialImports = new ArrayList<>()
 
final PartialImportRepresentation rep
 
final KeycloakSession session
 
final RealmModel realm
 
final AdminEventBuilder adminEvent
 

詳解

This class manages the PartialImport handlers.

著者
Stan Silvert ssilv.nosp@m.ert@.nosp@m.redha.nosp@m.t.co.nosp@m.m (C) 2016 Red Hat Inc.

構築子と解体子

◆ PartialImportManager()

org.keycloak.partialimport.PartialImportManager.PartialImportManager ( PartialImportRepresentation  rep,
KeycloakSession  session,
RealmModel  realm,
AdminEventBuilder  adminEvent 
)
inline
47  {
48  this.rep = rep;
49  this.session = session;
50  this.realm = realm;
51  this.adminEvent = adminEvent;
52 
53  // Do not change the order of these!!!
54  partialImports.add(new ClientsPartialImport());
55  partialImports.add(new RolesPartialImport());
56  partialImports.add(new IdentityProvidersPartialImport());
57  partialImports.add(new GroupsPartialImport());
58  partialImports.add(new UsersPartialImport());
59  }
final RealmModel realm
Definition: PartialImportManager.java:43
final KeycloakSession session
Definition: PartialImportManager.java:42
final List< PartialImport > partialImports
Definition: PartialImportManager.java:39
final PartialImportRepresentation rep
Definition: PartialImportManager.java:41
final AdminEventBuilder adminEvent
Definition: PartialImportManager.java:44

関数詳解

◆ fireCreatedEvent()

void org.keycloak.partialimport.PartialImportManager.fireCreatedEvent ( PartialImportResult  result)
inlineprivate
102  {
103  adminEvent.operation(OperationType.CREATE)
104  .resourcePath(result.getResourceType().getPath(), result.getId())
105  .representation(result.getRepresentation())
106  .success();
107  };
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171
final AdminEventBuilder adminEvent
Definition: PartialImportManager.java:44

◆ fireUpdateEvent()

void org.keycloak.partialimport.PartialImportManager.fireUpdateEvent ( PartialImportResult  result)
inlineprivate
109  {
110  adminEvent.operation(OperationType.UPDATE)
111  .resourcePath(result.getResourceType().getPath(), result.getId())
112  .representation(result.getRepresentation())
113  .success();
114  }
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171
final AdminEventBuilder adminEvent
Definition: PartialImportManager.java:44

◆ saveResources()

Response org.keycloak.partialimport.PartialImportManager.saveResources ( )
inline
61  {
62 
63  PartialImportResults results = new PartialImportResults();
64 
65  for (PartialImport partialImport : partialImports) {
66  try {
67  partialImport.prepare(rep, realm, session);
68  } catch (ErrorResponseException error) {
69  if (session.getTransactionManager().isActive()) session.getTransactionManager().setRollbackOnly();
70  return error.getResponse();
71  }
72  }
73 
74  for (PartialImport partialImport : partialImports) {
75  try {
76  partialImport.removeOverwrites(realm, session);
77  results.addAllResults(partialImport.doImport(rep, realm, session));
78  } catch (ErrorResponseException error) {
79  if (session.getTransactionManager().isActive()) session.getTransactionManager().setRollbackOnly();
80  return error.getResponse();
81  }
82  }
83 
84  for (PartialImportResult result : results.getResults()) {
85  switch (result.getAction()) {
86  case ADDED : fireCreatedEvent(result); break;
87  case OVERWRITTEN: fireUpdateEvent(result); break;
88  }
89  }
90 
91  if (session.getTransactionManager().isActive()) {
92  try {
93  session.getTransactionManager().commit();
94  } catch (ModelException e) {
95  return ErrorResponse.exists(e.getLocalizedMessage());
96  }
97  }
98 
99  return Response.ok(results).build();
100  }
final RealmModel realm
Definition: PartialImportManager.java:43
final KeycloakSession session
Definition: PartialImportManager.java:42
final List< PartialImport > partialImports
Definition: PartialImportManager.java:39
final PartialImportRepresentation rep
Definition: PartialImportManager.java:41
void fireUpdateEvent(PartialImportResult result)
Definition: PartialImportManager.java:109
void fireCreatedEvent(PartialImportResult result)
Definition: PartialImportManager.java:102

メンバ詳解

◆ adminEvent

final AdminEventBuilder org.keycloak.partialimport.PartialImportManager.adminEvent
private

◆ partialImports

final List<PartialImport> org.keycloak.partialimport.PartialImportManager.partialImports = new ArrayList<>()
private

◆ realm

final RealmModel org.keycloak.partialimport.PartialImportManager.realm
private

◆ rep

final PartialImportRepresentation org.keycloak.partialimport.PartialImportManager.rep
private

◆ session

final KeycloakSession org.keycloak.partialimport.PartialImportManager.session
private

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