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

クラス

class  PersistentUserSessionData
 

公開メンバ関数

 PersistentUserSessionAdapter (UserSessionModel other)
 
 PersistentUserSessionAdapter (KeycloakSession session, PersistentUserSessionModel model, RealmModel realm, String userId, Map< String, AuthenticatedClientSessionModel > clientSessions)
 
PersistentUserSessionModel getUpdatedModel ()
 
String getId ()
 
String getBrokerSessionId ()
 
String getBrokerUserId ()
 
UserModel getUser ()
 
String getUserId ()
 
RealmModel getRealm ()
 
String getLoginUsername ()
 
String getIpAddress ()
 
String getAuthMethod ()
 
boolean isRememberMe ()
 
int getStarted ()
 
int getLastSessionRefresh ()
 
void setLastSessionRefresh (int seconds)
 
boolean isOffline ()
 
Map< String, AuthenticatedClientSessionModelgetAuthenticatedClientSessions ()
 
void removeAuthenticatedClientSessions (Collection< String > removedClientUUIDS)
 
String getNote (String name)
 
void setNote (String name, String value)
 
void removeNote (String name)
 
Map< String, String > getNotes ()
 
State getState ()
 
void setState (State state)
 
void restartSession (RealmModel realm, UserModel user, String loginUsername, String ipAddress, String authMethod, boolean rememberMe, String brokerSessionId, String brokerUserId)
 
boolean equals (Object o)
 
int hashCode ()
 
default AuthenticatedClientSessionModel getAuthenticatedClientSessionByClient (String clientUUID)
 

非公開メンバ関数

PersistentUserSessionData getData ()
 

非公開変数類

final PersistentUserSessionModel model
 
UserModel user
 
String userId
 
final RealmModel realm
 
KeycloakSession session
 
final Map< String, AuthenticatedClientSessionModelauthenticatedClientSessions
 
PersistentUserSessionData data
 

詳解

著者
Marek Posolda

構築子と解体子

◆ PersistentUserSessionAdapter() [1/2]

org.keycloak.models.session.PersistentUserSessionAdapter.PersistentUserSessionAdapter ( UserSessionModel  other)
inline
49  {
50  this.data = new PersistentUserSessionData();
51  data.setAuthMethod(other.getAuthMethod());
52  data.setBrokerSessionId(other.getBrokerSessionId());
53  data.setBrokerUserId(other.getBrokerUserId());
54  data.setIpAddress(other.getIpAddress());
55  data.setNotes(other.getNotes());
56  data.setRememberMe(other.isRememberMe());
57  data.setStarted(other.getStarted());
58  if (other.getState() != null) {
59  data.setState(other.getState().toString());
60  }
61 
62  this.model = new PersistentUserSessionModel();
63  this.model.setUserSessionId(other.getId());
64  this.model.setLastSessionRefresh(other.getLastSessionRefresh());
65 
66  this.user = other.getUser();
67  this.userId = this.user.getId();
68  this.realm = other.getRealm();
69  this.authenticatedClientSessions = other.getAuthenticatedClientSessions();
70  }
final RealmModel realm
Definition: PersistentUserSessionAdapter.java:43
void setBrokerSessionId(String brokerSessionId)
Definition: PersistentUserSessionAdapter.java:290
void setNotes(Map< String, String > notes)
Definition: PersistentUserSessionAdapter.java:338
PersistentUserSessionData data
Definition: PersistentUserSessionAdapter.java:47
String userId
Definition: PersistentUserSessionAdapter.java:42
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
final Map< String, AuthenticatedClientSessionModel > authenticatedClientSessions
Definition: PersistentUserSessionAdapter.java:45
void setAuthMethod(String authMethod)
Definition: PersistentUserSessionAdapter.java:314
void setUserSessionId(String userSessionId)
Definition: PersistentUserSessionModel.java:34
void setLastSessionRefresh(int lastSessionRefresh)
Definition: PersistentUserSessionModel.java:42
void setState(String state)
Definition: PersistentUserSessionAdapter.java:346
void setRememberMe(boolean rememberMe)
Definition: PersistentUserSessionAdapter.java:322
void setIpAddress(String ipAddress)
Definition: PersistentUserSessionAdapter.java:306
void setStarted(int started)
Definition: PersistentUserSessionAdapter.java:330
UserModel user
Definition: PersistentUserSessionAdapter.java:41
void setBrokerUserId(String brokerUserId)
Definition: PersistentUserSessionAdapter.java:298

◆ PersistentUserSessionAdapter() [2/2]

org.keycloak.models.session.PersistentUserSessionAdapter.PersistentUserSessionAdapter ( KeycloakSession  session,
PersistentUserSessionModel  model,
RealmModel  realm,
String  userId,
Map< String, AuthenticatedClientSessionModel clientSessions 
)
inline
72  {
73  this.session = session;
74  this.model = model;
75  this.realm = realm;
76  this.userId = userId;
77  this.authenticatedClientSessions = clientSessions;
78  }
final RealmModel realm
Definition: PersistentUserSessionAdapter.java:43
String userId
Definition: PersistentUserSessionAdapter.java:42
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
final Map< String, AuthenticatedClientSessionModel > authenticatedClientSessions
Definition: PersistentUserSessionAdapter.java:45
KeycloakSession session
Definition: PersistentUserSessionAdapter.java:44

関数詳解

◆ equals()

boolean org.keycloak.models.session.PersistentUserSessionAdapter.equals ( Object  o)
inline
247  {
248  if (this == o) return true;
249  if (o == null || !(o instanceof UserSessionModel)) return false;
250 
251  UserSessionModel that = (UserSessionModel) o;
252  return that.getId().equals(getId());
253  }
String getId()
Definition: PersistentUserSessionAdapter.java:106

◆ getAuthenticatedClientSessionByClient()

default AuthenticatedClientSessionModel org.keycloak.models.UserSessionModel.getAuthenticatedClientSessionByClient ( String  clientUUID)
inlineinherited

Returns a client session for the given client UUID.

戻り値

org.keycloak.models.sessions.infinispan.UserSessionAdapterで実装されています。

67  {
68  return getAuthenticatedClientSessions().get(clientUUID);
69  };
Map< String, AuthenticatedClientSessionModel > getAuthenticatedClientSessions()

◆ getAuthenticatedClientSessions()

Map<String, AuthenticatedClientSessionModel> org.keycloak.models.session.PersistentUserSessionAdapter.getAuthenticatedClientSessions ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

179  {
181  }
final Map< String, AuthenticatedClientSessionModel > authenticatedClientSessions
Definition: PersistentUserSessionAdapter.java:45

◆ getAuthMethod()

String org.keycloak.models.session.PersistentUserSessionAdapter.getAuthMethod ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

149  {
150  return getData().getAuthMethod();
151  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
String getAuthMethod()
Definition: PersistentUserSessionAdapter.java:310

◆ getBrokerSessionId()

String org.keycloak.models.session.PersistentUserSessionAdapter.getBrokerSessionId ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

111  {
112  return getData().getBrokerSessionId();
113  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
String getBrokerSessionId()
Definition: PersistentUserSessionAdapter.java:286

◆ getBrokerUserId()

String org.keycloak.models.session.PersistentUserSessionAdapter.getBrokerUserId ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

116  {
117  return getData().getBrokerUserId();
118  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
String getBrokerUserId()
Definition: PersistentUserSessionAdapter.java:294

◆ getData()

PersistentUserSessionData org.keycloak.models.session.PersistentUserSessionAdapter.getData ( )
inlineprivate
81  {
82  if (data == null) {
83  try {
84  data = JsonSerialization.readValue(model.getData(), PersistentUserSessionData.class);
85  } catch (IOException ioe) {
86  throw new ModelException(ioe);
87  }
88  }
89 
90  return data;
91  }
PersistentUserSessionData data
Definition: PersistentUserSessionAdapter.java:47
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
String getData()
Definition: PersistentUserSessionModel.java:54

◆ getId()

String org.keycloak.models.session.PersistentUserSessionAdapter.getId ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

106  {
107  return model.getUserSessionId();
108  }
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
String getUserSessionId()
Definition: PersistentUserSessionModel.java:30

◆ getIpAddress()

String org.keycloak.models.session.PersistentUserSessionAdapter.getIpAddress ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

144  {
145  return getData().getIpAddress();
146  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
String getIpAddress()
Definition: PersistentUserSessionAdapter.java:302

◆ getLastSessionRefresh()

int org.keycloak.models.session.PersistentUserSessionAdapter.getLastSessionRefresh ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

164  {
165  return model.getLastSessionRefresh();
166  }
int getLastSessionRefresh()
Definition: PersistentUserSessionModel.java:38
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40

◆ getLoginUsername()

String org.keycloak.models.session.PersistentUserSessionAdapter.getLoginUsername ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

139  {
140  return getUser().getUsername();
141  }
UserModel getUser()
Definition: PersistentUserSessionAdapter.java:121

◆ getNote()

String org.keycloak.models.session.PersistentUserSessionAdapter.getNote ( String  name)
inline

org.keycloak.models.UserSessionModelを実装しています。

193  {
194  return getData().getNotes()==null ? null : getData().getNotes().get(name);
195  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
Map< String, String > getNotes()
Definition: PersistentUserSessionAdapter.java:334

◆ getNotes()

Map<String, String> org.keycloak.models.session.PersistentUserSessionAdapter.getNotes ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

215  {
216  return getData().getNotes();
217  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
Map< String, String > getNotes()
Definition: PersistentUserSessionAdapter.java:334

◆ getRealm()

RealmModel org.keycloak.models.session.PersistentUserSessionAdapter.getRealm ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

134  {
135  return realm;
136  }
final RealmModel realm
Definition: PersistentUserSessionAdapter.java:43

◆ getStarted()

int org.keycloak.models.session.PersistentUserSessionAdapter.getStarted ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

159  {
160  return getData().getStarted();
161  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
int getStarted()
Definition: PersistentUserSessionAdapter.java:326

◆ getState()

State org.keycloak.models.session.PersistentUserSessionAdapter.getState ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

220  {
221  String state = getData().getState();
222 
223  if (state == null) {
224  return null;
225  }
226 
227  // Migration to Keycloak 3.2
228  if (state.equals("LOGGING_IN")) {
229  return State.LOGGED_IN;
230  }
231 
232  return State.valueOf(state);
233  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
String getState()
Definition: PersistentUserSessionAdapter.java:342

◆ getUpdatedModel()

PersistentUserSessionModel org.keycloak.models.session.PersistentUserSessionAdapter.getUpdatedModel ( )
inline
94  {
95  try {
96  String updatedData = JsonSerialization.writeValueAsString(getData());
97  this.model.setData(updatedData);
98  } catch (IOException ioe) {
99  throw new ModelException(ioe);
100  }
101 
102  return this.model;
103  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
void setData(String data)
Definition: PersistentUserSessionModel.java:58

◆ getUser()

UserModel org.keycloak.models.session.PersistentUserSessionAdapter.getUser ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

121  {
122  if (user == null) {
124  }
125  return user;
126  }
final RealmModel realm
Definition: PersistentUserSessionAdapter.java:43
String userId
Definition: PersistentUserSessionAdapter.java:42
KeycloakSession session
Definition: PersistentUserSessionAdapter.java:44
UserModel getUserById(String id, RealmModel realm)
UserModel user
Definition: PersistentUserSessionAdapter.java:41

◆ getUserId()

String org.keycloak.models.session.PersistentUserSessionAdapter.getUserId ( )
inline

org.keycloak.models.OfflineUserSessionModelを実装しています。

129  {
130  return userId;
131  }
String userId
Definition: PersistentUserSessionAdapter.java:42

◆ hashCode()

int org.keycloak.models.session.PersistentUserSessionAdapter.hashCode ( )
inline
256  {
257  return getId().hashCode();
258  }
String getId()
Definition: PersistentUserSessionAdapter.java:106

◆ isOffline()

boolean org.keycloak.models.session.PersistentUserSessionAdapter.isOffline ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

174  {
175  return model.isOffline();
176  }
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
boolean isOffline()
Definition: PersistentUserSessionModel.java:46

◆ isRememberMe()

boolean org.keycloak.models.session.PersistentUserSessionAdapter.isRememberMe ( )
inline

org.keycloak.models.UserSessionModelを実装しています。

154  {
155  return getData().isRememberMe();
156  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
boolean isRememberMe()
Definition: PersistentUserSessionAdapter.java:318

◆ removeAuthenticatedClientSessions()

void org.keycloak.models.session.PersistentUserSessionAdapter.removeAuthenticatedClientSessions ( Collection< String >  removedClientUUIDS)
inline

org.keycloak.models.UserSessionModelを実装しています。

184  {
185  if (removedClientUUIDS == null || ! removedClientUUIDS.iterator().hasNext()) {
186  return;
187  }
188 
189  removedClientUUIDS.forEach(authenticatedClientSessions::remove);
190  }

◆ removeNote()

void org.keycloak.models.session.PersistentUserSessionAdapter.removeNote ( String  name)
inline

org.keycloak.models.UserSessionModelを実装しています。

208  {
209  if (getData().getNotes() != null) {
210  getData().getNotes().remove(name);
211  }
212  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
Map< String, String > getNotes()
Definition: PersistentUserSessionAdapter.java:215
Map< String, String > getNotes()
Definition: PersistentUserSessionAdapter.java:334

◆ restartSession()

void org.keycloak.models.session.PersistentUserSessionAdapter.restartSession ( RealmModel  realm,
UserModel  user,
String  loginUsername,
String  ipAddress,
String  authMethod,
boolean  rememberMe,
String  brokerSessionId,
String  brokerUserId 
)
inline

org.keycloak.models.UserSessionModelを実装しています。

242  {
243  throw new IllegalStateException("Not supported");
244  }

◆ setLastSessionRefresh()

void org.keycloak.models.session.PersistentUserSessionAdapter.setLastSessionRefresh ( int  seconds)
inline

org.keycloak.models.UserSessionModelを実装しています。

169  {
170  model.setLastSessionRefresh(seconds);
171  }
final PersistentUserSessionModel model
Definition: PersistentUserSessionAdapter.java:40
void setLastSessionRefresh(int lastSessionRefresh)
Definition: PersistentUserSessionModel.java:42

◆ setNote()

void org.keycloak.models.session.PersistentUserSessionAdapter.setNote ( String  name,
String  value 
)
inline

org.keycloak.models.UserSessionModelを実装しています。

198  {
199  PersistentUserSessionData data = getData();
200  if (data.getNotes() == null) {
201  data.setNotes(new HashMap<String, String>());
202  }
203  data.getNotes().put(name, value);
204 
205  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
PersistentUserSessionData data
Definition: PersistentUserSessionAdapter.java:47

◆ setState()

void org.keycloak.models.session.PersistentUserSessionAdapter.setState ( State  state)
inline

org.keycloak.models.UserSessionModelを実装しています。

236  {
237  String stateStr = state==null ? null : state.toString();
238  getData().setState(stateStr);
239  }
PersistentUserSessionData getData()
Definition: PersistentUserSessionAdapter.java:81
void setState(String state)
Definition: PersistentUserSessionAdapter.java:346

メンバ詳解

◆ authenticatedClientSessions

final Map<String, AuthenticatedClientSessionModel> org.keycloak.models.session.PersistentUserSessionAdapter.authenticatedClientSessions
private

◆ data

PersistentUserSessionData org.keycloak.models.session.PersistentUserSessionAdapter.data
private

◆ model

final PersistentUserSessionModel org.keycloak.models.session.PersistentUserSessionAdapter.model
private

◆ realm

final RealmModel org.keycloak.models.session.PersistentUserSessionAdapter.realm
private

◆ session

KeycloakSession org.keycloak.models.session.PersistentUserSessionAdapter.session
private

◆ user

UserModel org.keycloak.models.session.PersistentUserSessionAdapter.user
private

◆ userId

String org.keycloak.models.session.PersistentUserSessionAdapter.userId
private

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