private List<RealmModel> getRealms(TypedQuery<String> query) { List<String> entities = query.getResultList(); List<RealmModel> realms = new ArrayList<RealmModel>(); for (String id : entities) { RealmModel realm = session.realms().getRealm(id); if (realm != null) realms.add(realm); } return realms; }
private RealmModel getRealmByName(String realmName) { RealmProvider realmProvider = session.getProvider(RealmProvider.class); return realmProvider.getRealmByName(realmName); }
@Override public void run(KeycloakSession session) { List<RealmModel> realms = session.realms().getRealms(); holder.realms = realms; }
String realmName = rep.getRealm(); RealmProvider model = session.realms(); RealmModel realm = model.getRealmByName(realmName); if (Config.getAdminRealm().equals(realm.getId())) { for (RealmModel currRealm : model.getRealms()) { currRealm.setMasterAdminClient(null); model.removeRealm(realm.getId());
@Override public ClientModel getMasterAdminClient() { ClientEntity masterAdminClient = realm.getMasterAdminClient(); if (masterAdminClient == null) { return null; } RealmModel masterRealm = null; String masterAdminClientRealmId = masterAdminClient.getRealm().getId(); if (masterAdminClientRealmId.equals(getId())) { masterRealm = this; } else { masterRealm = session.realms().getRealm(masterAdminClientRealmId); } return session.realms().getClientById(masterAdminClient.getId(), masterRealm); }
@Override public GroupModel getGroupById(String id) { return model.getGroupById(id, this); }
@Override public RoleModel getRoleById(String id) { return session.realms().getRoleById(id, this); }
@Override public ClientModel getClientById(String id) { return model.getClientById(id, this); }
ClientModel client = session.realms().getClientById(id, realm); if (client == null) { return getRealmDelegate().getClients(realm);
@Override public ClientModel addClient(String name) { return session.realms().addClient(this, name); }
@Override public RoleModel addRole(String name) { return session.realms().addClientRole(realm, this, name); }
@Override public GroupModel getGroupById(String id) { return session.realms().getGroupById(id, this); }
@Override public RoleModel getRoleById(String id) { return session.realms().getRoleById(id, this); }
@Override public ClientModel getClientById(String id) { return session.realms().getClientById(id, this); }
@Override public ClientModel addClient(String id, String clientId) { return session.realms().addClient(this, id, clientId); }
@Override public RoleModel addRole(String name) { return session.realms().addClientRole(realm, this, name); }
@Override public RealmModel getRealmByName(String name) { TypedQuery<String> query = em.createNamedQuery("getRealmIdByName", String.class); query.setParameter("name", name); List<String> entities = query.getResultList(); if (entities.isEmpty()) return null; if (entities.size() > 1) throw new IllegalStateException("Should not be more than one realm with same name"); String id = query.getResultList().get(0); return session.realms().getRealm(id); }
@Override protected void runExportImportTask(KeycloakSession session) throws IOException { List<RealmModel> realms = session.realms().getRealms(); List<RealmRepresentation> reps = new ArrayList<RealmRepresentation>(); for (RealmModel realm : realms) { reps.add(ExportUtils.exportRealm(session, realm, true)); } writeToFile(reps); }
@Override protected void runExportImportTask(KeycloakSession session) throws IOException { RealmModel realm = session.realms().getRealmByName(realmName); RealmRepresentation realmRep = ExportUtils.exportRealm(session, realm, true); writeToFile(realmRep); }
@Override public List<GroupModel> getDefaultGroups() { List<String> entities = realm.getDefaultGroups(); if (entities == null || entities.isEmpty()) return Collections.EMPTY_LIST; List<GroupModel> defaultGroups = new LinkedList<>(); for (String id : entities) { defaultGroups.add(session.realms().getGroupById(id, this)); } return Collections.unmodifiableList(defaultGroups); }