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

公開メンバ関数

 BasicTimerProvider (KeycloakSession session, Timer timer, BasicTimerProviderFactory factory)
 
void schedule (final Runnable runnable, final long intervalMillis, String taskName)
 
void scheduleTask (ScheduledTask scheduledTask, long intervalMillis, String taskName)
 
TimerTaskContext cancelTask (String taskName)
 
void close ()
 

非公開変数類

final KeycloakSession session
 
final Timer timer
 
final BasicTimerProviderFactory factory
 

静的非公開変数類

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

詳解

著者
Stian Thorgersen

構築子と解体子

◆ BasicTimerProvider()

org.keycloak.timer.basic.BasicTimerProvider.BasicTimerProvider ( KeycloakSession  session,
Timer  timer,
BasicTimerProviderFactory  factory 
)
inline
40  {
41  this.session = session;
42  this.timer = timer;
43  this.factory = factory;
44  }
final BasicTimerProviderFactory factory
Definition: BasicTimerProvider.java:38
final Timer timer
Definition: BasicTimerProvider.java:37
final KeycloakSession session
Definition: BasicTimerProvider.java:36

関数詳解

◆ cancelTask()

TimerTaskContext org.keycloak.timer.basic.BasicTimerProvider.cancelTask ( String  taskName)
inline
73  {
74  TimerTaskContextImpl existingTask = factory.removeTask(taskName);
75  if (existingTask != null) {
76  logger.debugf("Cancelling task '%s'", taskName);
77  existingTask.timerTask.cancel();
78  }
79 
80  return existingTask;
81  }
final BasicTimerProviderFactory factory
Definition: BasicTimerProvider.java:38
TimerTaskContextImpl removeTask(String taskName)
Definition: BasicTimerProviderFactory.java:70
static final Logger logger
Definition: BasicTimerProvider.java:34

◆ close()

void org.keycloak.timer.basic.BasicTimerProvider.close ( )
inline
84  {
85  // do nothing
86  }

◆ schedule()

void org.keycloak.timer.basic.BasicTimerProvider.schedule ( final Runnable  runnable,
final long  intervalMillis,
String  taskName 
)
inline
47  {
48  TimerTask task = new TimerTask() {
49  @Override
50  public void run() {
51  runnable.run();
52  }
53  };
54 
55  TimerTaskContextImpl taskContext = new TimerTaskContextImpl(runnable, task, intervalMillis);
56  TimerTaskContextImpl existingTask = factory.putTask(taskName, taskContext);
57  if (existingTask != null) {
58  logger.debugf("Existing timer task '%s' found. Cancelling it", taskName);
59  existingTask.timerTask.cancel();
60  }
61 
62  logger.debugf("Starting task '%s' with interval '%d'", taskName, intervalMillis);
63  timer.schedule(task, intervalMillis, intervalMillis);
64  }
final BasicTimerProviderFactory factory
Definition: BasicTimerProvider.java:38
final Timer timer
Definition: BasicTimerProvider.java:37
TimerTaskContextImpl putTask(String taskName, TimerTaskContextImpl task)
Definition: BasicTimerProviderFactory.java:66
static final Logger logger
Definition: BasicTimerProvider.java:34

◆ scheduleTask()

void org.keycloak.timer.basic.BasicTimerProvider.scheduleTask ( ScheduledTask  scheduledTask,
long  intervalMillis,
String  taskName 
)
inline
67  {
68  ScheduledTaskRunner scheduledTaskRunner = new ScheduledTaskRunner(session.getKeycloakSessionFactory(), scheduledTask);
69  this.schedule(scheduledTaskRunner, intervalMillis, taskName);
70  }
void schedule(final Runnable runnable, final long intervalMillis, String taskName)
Definition: BasicTimerProvider.java:47
final KeycloakSession session
Definition: BasicTimerProvider.java:36

メンバ詳解

◆ factory

final BasicTimerProviderFactory org.keycloak.timer.basic.BasicTimerProvider.factory
private

◆ logger

final Logger org.keycloak.timer.basic.BasicTimerProvider.logger = Logger.getLogger(BasicTimerProvider.class)
staticprivate

◆ session

final KeycloakSession org.keycloak.timer.basic.BasicTimerProvider.session
private

◆ timer

final Timer org.keycloak.timer.basic.BasicTimerProvider.timer
private

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