Tabnine Logo
InfinispanUserSessionInitializer
Code IndexAdd Tabnine to your IDE (free)

How to use
InfinispanUserSessionInitializer
in
org.keycloak.models.sessions.infinispan.initializer

Best Java code snippets using org.keycloak.models.sessions.infinispan.initializer.InfinispanUserSessionInitializer (Showing top 5 results out of 315)

origin: org.keycloak/keycloak-model-sessions-infinispan

public void loadPersistentSessions() {
  if (isFinished()) {
    return;
  }
  while (!isFinished()) {
    if (!isCoordinator()) {
      try {
        latch.await(500, TimeUnit.MILLISECONDS);
      } catch (InterruptedException ie) {
        log.error("Interrupted", ie);
      }
    } else {
      startLoading();
    }
  }
}
origin: org.keycloak/keycloak-model-sessions-infinispan

private void saveStateToCache(final InitializerState state) {
  // 3 attempts to send the message (it may fail if some node fails in the meantime)
  retry(3, new Runnable() {
    @Override
    public void run() {
      // Save this synchronously to ensure all nodes read correct state
      InfinispanUserSessionInitializer.this.cache.getAdvancedCache().
          withFlags(Flag.IGNORE_RETURN_VALUES, Flag.FORCE_SYNCHRONOUS)
          .put(stateKey, state);
    }
  });
}
origin: org.keycloak/keycloak-model-sessions-infinispan

@Override
public void run(KeycloakSession session) {
  InfinispanConnectionProvider connections = session.getProvider(InfinispanConnectionProvider.class);
  Cache<String, SessionEntity> cache = connections.getCache(InfinispanConnectionProvider.OFFLINE_SESSION_CACHE_NAME);
  InfinispanUserSessionInitializer initializer = new InfinispanUserSessionInitializer(sessionFactory, cache, new OfflineUserSessionLoader(), maxErrors, sessionsPerSegment, "offlineUserSessions");
  initializer.initCache();
  initializer.loadPersistentSessions();
}
origin: org.keycloak/keycloak-model-sessions-infinispan

private void startLoading() {
  InitializerState state = getOrCreateInitializerState();
      saveStateToCache(state);
origin: org.keycloak/keycloak-model-sessions-infinispan

private InitializerState getOrCreateInitializerState() {
  InitializerState state = (InitializerState) cache.get(stateKey);
  if (state == null) {
    final int[] count = new int[1];
    // Rather use separate transactions for update and counting
    KeycloakModelUtils.runJobInTransaction(sessionFactory, new KeycloakSessionTask() {
      @Override
      public void run(KeycloakSession session) {
        sessionLoader.init(session);
      }
    });
    KeycloakModelUtils.runJobInTransaction(sessionFactory, new KeycloakSessionTask() {
      @Override
      public void run(KeycloakSession session) {
        count[0] = sessionLoader.getSessionsCount(session);
      }
    });
    state = new InitializerState();
    state.init(count[0], sessionsPerSegment);
    saveStateToCache(state);
  }
  return state;
}
org.keycloak.models.sessions.infinispan.initializerInfinispanUserSessionInitializer

Javadoc

Startup initialization for reading persistent userSessions/clientSessions to be filled into infinispan/memory . In cluster, the initialization is distributed among all cluster nodes, so the startup time is even faster

Most used methods

  • <init>
  • getOrCreateInitializerState
  • initCache
  • isCoordinator
  • isFinished
  • loadPersistentSessions
  • retry
  • saveStateToCache
  • startLoading

Popular in Java

  • Reading from database using SQL prepared statement
  • scheduleAtFixedRate (ScheduledExecutorService)
  • onCreateOptionsMenu (Activity)
  • getResourceAsStream (ClassLoader)
  • SocketTimeoutException (java.net)
    This exception is thrown when a timeout expired on a socket read or accept operation.
  • Comparator (java.util)
    A Comparator is used to compare two objects to determine their ordering with respect to each other.
  • Collectors (java.util.stream)
  • ZipFile (java.util.zip)
    This class provides random read access to a zip file. You pay more to read the zip file's central di
  • JTable (javax.swing)
  • XPath (javax.xml.xpath)
    XPath provides access to the XPath evaluation environment and expressions. Evaluation of XPath Expr
  • From CI to AI: The AI layer in your organization
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now