Refactor to prepar for splitting model
This commit is contained in:
1 parent
6291936ce9
commit
34a1923d18
140 files changed
+1033
-934
No files matched your search
@@ -1,7 +1,7 @@
|
||||
package org.keycloak.test.tools;
|
||||
|
||||
import org.jboss.resteasy.core.Dispatcher;
|
||||
import org.keycloak.provider.ProviderSessionFactory;
|
||||
import org.keycloak.models.KeycloakSessionFactory;
|
||||
import org.keycloak.services.resources.KeycloakApplication;
|
||||
|
||||
import javax.servlet.ServletContext;
|
||||
@@ -15,18 +15,18 @@ import java.util.Set;
|
||||
*/
|
||||
public class KeycloakTestApplication extends Application {
|
||||
|
||||
protected ProviderSessionFactory providerSessionFactory;
|
||||
protected KeycloakSessionFactory sessionFactory;
|
||||
protected Set<Class<?>> classes = new HashSet<Class<?>>();
|
||||
protected Set<Object> singletons = new HashSet<Object>();
|
||||
|
||||
public KeycloakTestApplication(@Context ServletContext context, @Context Dispatcher dispatcher) {
|
||||
KeycloakApplication.loadConfig();
|
||||
|
||||
this.providerSessionFactory = KeycloakApplication.createProviderSessionFactory();
|
||||
this.sessionFactory = KeycloakApplication.createSessionFactory();
|
||||
|
||||
context.setAttribute(ProviderSessionFactory.class.getName(), this.providerSessionFactory);
|
||||
context.setAttribute(KeycloakSessionFactory.class.getName(), this.sessionFactory);
|
||||
|
||||
singletons.add(new PerfTools(providerSessionFactory));
|
||||
singletons.add(new PerfTools(sessionFactory));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -3,11 +3,9 @@ package org.keycloak.test.tools;
|
||||
import org.keycloak.exportimport.ExportImportConfig;
|
||||
import org.keycloak.exportimport.ExportImportProvider;
|
||||
import org.keycloak.models.KeycloakSession;
|
||||
import org.keycloak.models.KeycloakSessionFactory;
|
||||
import org.keycloak.models.RealmModel;
|
||||
import org.keycloak.models.UserModel;
|
||||
import org.keycloak.provider.ProviderSession;
|
||||
import org.keycloak.provider.ProviderSessionFactory;
|
||||
import org.keycloak.services.managers.RealmManager;
|
||||
import org.keycloak.test.tools.jobs.CreateUsers;
|
||||
import org.keycloak.util.ProviderLoader;
|
||||
|
||||
@@ -24,7 +22,6 @@ import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
|
||||
@@ -36,15 +33,15 @@ public class PerfTools {
|
||||
|
||||
private ExecutorService executor = Executors.newFixedThreadPool(20);
|
||||
|
||||
private final ProviderSessionFactory providerSessionFactory;
|
||||
private final KeycloakSessionFactory sessionFactory;
|
||||
|
||||
@Context
|
||||
private KeycloakSession session;
|
||||
|
||||
private List<Job> jobs = new LinkedList<Job>();
|
||||
|
||||
public PerfTools(ProviderSessionFactory providerSessionFactory) {
|
||||
this.providerSessionFactory = providerSessionFactory;
|
||||
public PerfTools(KeycloakSessionFactory sessionFactory) {
|
||||
this.sessionFactory = sessionFactory;
|
||||
}
|
||||
|
||||
@GET
|
||||
@@ -89,7 +86,7 @@ public class PerfTools {
|
||||
|
||||
for (int s = start; s < (start + count); s += batch) {
|
||||
int c = s + batch <= (start + count) ? batch : (start + count) - s;
|
||||
executor.submit(new CreateUsers(job, providerSessionFactory, realmName, s, c, prefix, rolesArray));
|
||||
executor.submit(new CreateUsers(job, sessionFactory, realmName, s, c, prefix, rolesArray));
|
||||
}
|
||||
|
||||
return Response.noContent().build();
|
||||
@@ -115,7 +112,7 @@ public class PerfTools {
|
||||
|
||||
if (providers.hasNext()) {
|
||||
ExportImportProvider exportImport = providers.next();
|
||||
exportImport.checkExportImport(providerSessionFactory);
|
||||
exportImport.checkExportImport(sessionFactory);
|
||||
} else {
|
||||
throw new WebApplicationException(Response.Status.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
package org.keycloak.test.tools.jobs;
|
||||
|
||||
import org.keycloak.models.KeycloakSession;
|
||||
import org.keycloak.models.KeycloakSessionFactory;
|
||||
import org.keycloak.models.RealmModel;
|
||||
import org.keycloak.models.UserCredentialModel;
|
||||
import org.keycloak.models.UserModel;
|
||||
import org.keycloak.models.cache.CacheKeycloakSession;
|
||||
import org.keycloak.provider.ProviderSession;
|
||||
import org.keycloak.provider.ProviderSessionFactory;
|
||||
import org.keycloak.services.managers.RealmManager;
|
||||
import org.keycloak.test.tools.PerfTools;
|
||||
|
||||
@@ -19,16 +17,16 @@ import java.io.StringWriter;
|
||||
public class CreateUsers implements Runnable {
|
||||
|
||||
private PerfTools.Job job;
|
||||
private final ProviderSessionFactory providerSessionFactory;
|
||||
private final KeycloakSessionFactory sessionFactory;
|
||||
private final String realmName;
|
||||
private int start;
|
||||
private int count;
|
||||
private String prefix;
|
||||
private String[] roles;
|
||||
|
||||
public CreateUsers(PerfTools.Job job, ProviderSessionFactory providerSessionFactory, String realmName, int start, int count, String prefix, String[] roles) {
|
||||
public CreateUsers(PerfTools.Job job, KeycloakSessionFactory sessionFactory, String realmName, int start, int count, String prefix, String[] roles) {
|
||||
this.job = job;
|
||||
this.providerSessionFactory = providerSessionFactory;
|
||||
this.sessionFactory = sessionFactory;
|
||||
this.realmName = realmName;
|
||||
this.start = start;
|
||||
this.count = count;
|
||||
@@ -40,10 +38,8 @@ public class CreateUsers implements Runnable {
|
||||
public void run() {
|
||||
job.start();
|
||||
|
||||
ProviderSession providerSession = providerSessionFactory.createSession();
|
||||
KeycloakSession session = sessionFactory.create();
|
||||
try {
|
||||
KeycloakSession session = providerSession.getProvider(CacheKeycloakSession.class);
|
||||
|
||||
session.getTransaction().begin();
|
||||
|
||||
RealmModel realm = new RealmManager(session).getRealmByName(realmName);
|
||||
@@ -74,7 +70,7 @@ public class CreateUsers implements Runnable {
|
||||
t.printStackTrace(new PrintWriter(sw));
|
||||
job.setError(sw.toString());
|
||||
} finally {
|
||||
providerSession.close();
|
||||
session.close();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
},
|
||||
|
||||
"modelCache": {
|
||||
"provider": "${keycloak.model.cache.provider:none}"
|
||||
"provider": "${keycloak.model.cache.provider:simple}"
|
||||
},
|
||||
|
||||
"timer": {
|
||||
@@ -31,7 +31,7 @@
|
||||
}
|
||||
},
|
||||
|
||||
"login-forms": {
|
||||
"login": {
|
||||
"provider": "freemarker"
|
||||
},
|
||||
|
||||
|
||||
Reference in new issue
Block a user