keycloak-service
公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.keycloak.transaction.JtaTransactionWrapper クラス
org.keycloak.transaction.JtaTransactionWrapper の継承関係図
Inheritance graph
org.keycloak.transaction.JtaTransactionWrapper 連携図
Collaboration graph

公開メンバ関数

 JtaTransactionWrapper (KeycloakSessionFactory factory, TransactionManager tm)
 
void handleException (Throwable e)
 
void begin ()
 
void commit ()
 
void rollback ()
 
void setRollbackOnly ()
 
boolean getRollbackOnly ()
 
boolean isActive ()
 

限定公開メンバ関数

void end ()
 

限定公開変数類

TransactionManager tm
 
Transaction ut
 
Transaction suspended
 
Exception ended
 
KeycloakSessionFactory factory
 

静的非公開変数類

static final Logger logger = Logger.getLogger(JtaTransactionWrapper.class)
 

詳解

著者
Bill Burke
バージョン
Revision
1

構築子と解体子

◆ JtaTransactionWrapper()

org.keycloak.transaction.JtaTransactionWrapper.JtaTransactionWrapper ( KeycloakSessionFactory  factory,
TransactionManager  tm 
)
inline
42  {
43  this.tm = tm;
44  this.factory = factory;
45  try {
46 
47  suspended = tm.suspend();
48  logger.debug("new JtaTransactionWrapper");
49  logger.debugv("was existing? {0}", suspended != null);
50  tm.begin();
51  ut = tm.getTransaction();
52  //ended = new Exception();
53  } catch (Exception e) {
54  throw new RuntimeException(e);
55  }
56  }
KeycloakSessionFactory factory
Definition: JtaTransactionWrapper.java:40
static final Logger logger
Definition: JtaTransactionWrapper.java:35
TransactionManager tm
Definition: JtaTransactionWrapper.java:36
Transaction suspended
Definition: JtaTransactionWrapper.java:38
Transaction ut
Definition: JtaTransactionWrapper.java:37

関数詳解

◆ begin()

void org.keycloak.transaction.JtaTransactionWrapper.begin ( )
inline
85  {
86  }

◆ commit()

void org.keycloak.transaction.JtaTransactionWrapper.commit ( )
inline
89  {
90  try {
91  logger.debug("JtaTransactionWrapper commit");
92  tm.commit();
93  } catch (Exception e) {
94  handleException(e);
95  } finally {
96  end();
97  }
98  }
void handleException(Throwable e)
Definition: JtaTransactionWrapper.java:58
static final Logger logger
Definition: JtaTransactionWrapper.java:35
TransactionManager tm
Definition: JtaTransactionWrapper.java:36
void end()
Definition: JtaTransactionWrapper.java:152

◆ end()

void org.keycloak.transaction.JtaTransactionWrapper.end ( )
inlineprotected
152  {
153  ended = null;
154  logger.debug("JtaTransactionWrapper end");
155  if (suspended != null) {
156  try {
157  logger.debug("JtaTransactionWrapper resuming suspended");
158  tm.resume(suspended);
159  } catch (Exception e) {
160  throw new RuntimeException(e);
161  }
162  }
163 
164  }
Exception ended
Definition: JtaTransactionWrapper.java:39
static final Logger logger
Definition: JtaTransactionWrapper.java:35
TransactionManager tm
Definition: JtaTransactionWrapper.java:36
Transaction suspended
Definition: JtaTransactionWrapper.java:38

◆ getRollbackOnly()

boolean org.keycloak.transaction.JtaTransactionWrapper.getRollbackOnly ( )
inline
123  {
124  try {
125  return tm.getStatus() == Status.STATUS_MARKED_ROLLBACK;
126  } catch (Exception e) {
127  handleException(e);
128  }
129  return false;
130  }
void handleException(Throwable e)
Definition: JtaTransactionWrapper.java:58
TransactionManager tm
Definition: JtaTransactionWrapper.java:36

◆ handleException()

void org.keycloak.transaction.JtaTransactionWrapper.handleException ( Throwable  e)
inline
58  {
59  if (e instanceof RollbackException) {
60  e = e.getCause() != null ? e.getCause() : e;
61  }
62 
63  for (ProviderFactory factory : this.factory.getProviderFactories(ExceptionConverter.class)) {
64  ExceptionConverter converter = (ExceptionConverter)factory;
65  Throwable throwable = converter.convert(e);
66  if (throwable == null) continue;
67  if (throwable instanceof RuntimeException) {
68  throw (RuntimeException)throwable;
69  } else {
70  throw new RuntimeException(throwable);
71  }
72  }
73 
74  if (e instanceof RuntimeException) {
75  throw (RuntimeException)e;
76  } else {
77  throw new RuntimeException(e);
78  }
79 
80 
81 
82  }
KeycloakSessionFactory factory
Definition: JtaTransactionWrapper.java:40

◆ isActive()

boolean org.keycloak.transaction.JtaTransactionWrapper.isActive ( )
inline
133  {
134  try {
135  return tm.getStatus() == Status.STATUS_ACTIVE;
136  } catch (Exception e) {
137  handleException(e);
138  }
139  return false;
140  }
void handleException(Throwable e)
Definition: JtaTransactionWrapper.java:58
TransactionManager tm
Definition: JtaTransactionWrapper.java:36

◆ rollback()

void org.keycloak.transaction.JtaTransactionWrapper.rollback ( )
inline
101  {
102  try {
103  logger.debug("JtaTransactionWrapper rollback");
104  tm.rollback();
105  } catch (Exception e) {
106  handleException(e);
107  } finally {
108  end();
109  }
110 
111  }
void handleException(Throwable e)
Definition: JtaTransactionWrapper.java:58
static final Logger logger
Definition: JtaTransactionWrapper.java:35
TransactionManager tm
Definition: JtaTransactionWrapper.java:36
void end()
Definition: JtaTransactionWrapper.java:152

◆ setRollbackOnly()

void org.keycloak.transaction.JtaTransactionWrapper.setRollbackOnly ( )
inline
114  {
115  try {
116  tm.setRollbackOnly();
117  } catch (Exception e) {
118  handleException(e);
119  }
120  }
void handleException(Throwable e)
Definition: JtaTransactionWrapper.java:58
TransactionManager tm
Definition: JtaTransactionWrapper.java:36

メンバ詳解

◆ ended

Exception org.keycloak.transaction.JtaTransactionWrapper.ended
protected

◆ factory

KeycloakSessionFactory org.keycloak.transaction.JtaTransactionWrapper.factory
protected

◆ logger

final Logger org.keycloak.transaction.JtaTransactionWrapper.logger = Logger.getLogger(JtaTransactionWrapper.class)
staticprivate

◆ suspended

Transaction org.keycloak.transaction.JtaTransactionWrapper.suspended
protected

◆ tm

TransactionManager org.keycloak.transaction.JtaTransactionWrapper.tm
protected

◆ ut

Transaction org.keycloak.transaction.JtaTransactionWrapper.ut
protected

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