Move session persistence package to legacy-private module
Also, disabling the jpa session persister when map storage is enabled. Closes #12712
This commit is contained in:
parent
9143d8bd0e
commit
4b20e90292
14 changed files with 10 additions and 5 deletions
|
@ -18,18 +18,20 @@
|
||||||
package org.keycloak.models.jpa.session;
|
package org.keycloak.models.jpa.session;
|
||||||
|
|
||||||
import org.keycloak.Config;
|
import org.keycloak.Config;
|
||||||
|
import org.keycloak.common.Profile;
|
||||||
import org.keycloak.connections.jpa.JpaConnectionProvider;
|
import org.keycloak.connections.jpa.JpaConnectionProvider;
|
||||||
import org.keycloak.models.KeycloakSession;
|
import org.keycloak.models.KeycloakSession;
|
||||||
import org.keycloak.models.KeycloakSessionFactory;
|
import org.keycloak.models.KeycloakSessionFactory;
|
||||||
import org.keycloak.models.session.UserSessionPersisterProvider;
|
import org.keycloak.models.session.UserSessionPersisterProvider;
|
||||||
import org.keycloak.models.session.UserSessionPersisterProviderFactory;
|
import org.keycloak.models.session.UserSessionPersisterProviderFactory;
|
||||||
|
import org.keycloak.provider.EnvironmentDependentProviderFactory;
|
||||||
|
|
||||||
import javax.persistence.EntityManager;
|
import javax.persistence.EntityManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
|
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
|
||||||
*/
|
*/
|
||||||
public class JpaUserSessionPersisterProviderFactory implements UserSessionPersisterProviderFactory {
|
public class JpaUserSessionPersisterProviderFactory implements UserSessionPersisterProviderFactory, EnvironmentDependentProviderFactory {
|
||||||
|
|
||||||
public static final String ID = "jpa";
|
public static final String ID = "jpa";
|
||||||
|
|
||||||
|
@ -63,4 +65,9 @@ public class JpaUserSessionPersisterProviderFactory implements UserSessionPersis
|
||||||
public int order() {
|
public int order() {
|
||||||
return 100;
|
return 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSupported() {
|
||||||
|
return !Profile.isFeatureEnabled(Profile.Feature.MAP_STORAGE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,3 +20,4 @@ org.keycloak.models.cache.CacheRealmProviderSpi
|
||||||
org.keycloak.storage.client.ClientStorageProviderSpi
|
org.keycloak.storage.client.ClientStorageProviderSpi
|
||||||
org.keycloak.storage.group.GroupStorageProviderSpi
|
org.keycloak.storage.group.GroupStorageProviderSpi
|
||||||
org.keycloak.storage.clientscope.ClientScopeStorageProviderSpi
|
org.keycloak.storage.clientscope.ClientScopeStorageProviderSpi
|
||||||
|
org.keycloak.models.session.UserSessionPersisterSpi
|
||||||
|
|
|
@ -30,7 +30,6 @@ org.keycloak.models.SingleUseObjectSpi
|
||||||
org.keycloak.models.UserSessionSpi
|
org.keycloak.models.UserSessionSpi
|
||||||
org.keycloak.models.UserLoginFailureSpi
|
org.keycloak.models.UserLoginFailureSpi
|
||||||
org.keycloak.models.UserSpi
|
org.keycloak.models.UserSpi
|
||||||
org.keycloak.models.session.UserSessionPersisterSpi
|
|
||||||
org.keycloak.models.dblock.DBLockSpi
|
org.keycloak.models.dblock.DBLockSpi
|
||||||
org.keycloak.migration.MigrationSpi
|
org.keycloak.migration.MigrationSpi
|
||||||
org.keycloak.events.EventListenerSpi
|
org.keycloak.events.EventListenerSpi
|
||||||
|
|
|
@ -27,7 +27,6 @@ import org.keycloak.models.RealmModel;
|
||||||
import org.keycloak.models.RoleModel;
|
import org.keycloak.models.RoleModel;
|
||||||
import org.keycloak.models.UserModel;
|
import org.keycloak.models.UserModel;
|
||||||
import org.keycloak.models.UserSessionModel;
|
import org.keycloak.models.UserSessionModel;
|
||||||
import org.keycloak.models.session.UserSessionPersisterProvider;
|
|
||||||
import org.keycloak.services.ServicesLogger;
|
import org.keycloak.services.ServicesLogger;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -46,11 +45,9 @@ public class UserSessionManager {
|
||||||
private static final Logger logger = Logger.getLogger(UserSessionManager.class);
|
private static final Logger logger = Logger.getLogger(UserSessionManager.class);
|
||||||
|
|
||||||
private final KeycloakSession kcSession;
|
private final KeycloakSession kcSession;
|
||||||
private final UserSessionPersisterProvider persister;
|
|
||||||
|
|
||||||
public UserSessionManager(KeycloakSession session) {
|
public UserSessionManager(KeycloakSession session) {
|
||||||
this.kcSession = session;
|
this.kcSession = session;
|
||||||
this.persister = session.getProvider(UserSessionPersisterProvider.class);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void createOrUpdateOfflineSession(AuthenticatedClientSessionModel clientSession, UserSessionModel userSession) {
|
public void createOrUpdateOfflineSession(AuthenticatedClientSessionModel clientSession, UserSessionModel userSession) {
|
||||||
|
|
|
@ -852,6 +852,7 @@
|
||||||
<keycloak.authorizationCache.enabled>false</keycloak.authorizationCache.enabled>
|
<keycloak.authorizationCache.enabled>false</keycloak.authorizationCache.enabled>
|
||||||
<keycloak.realmCache.enabled>false</keycloak.realmCache.enabled>
|
<keycloak.realmCache.enabled>false</keycloak.realmCache.enabled>
|
||||||
<keycloak.userCache.enabled>false</keycloak.userCache.enabled>
|
<keycloak.userCache.enabled>false</keycloak.userCache.enabled>
|
||||||
|
<keycloak.userSessionPersister.provider></keycloak.userSessionPersister.provider>
|
||||||
</systemPropertyVariables>
|
</systemPropertyVariables>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
Loading…
Reference in a new issue