@Override public void updateClient() { em.flush(); session.getKeycloakSessionFactory().publish(new RealmModel.ClientUpdatedEvent() { @Override public ClientModel getUpdatedClient() { return ClientAdapter.this; } @Override public KeycloakSession getKeycloakSession() { return session; } }); }
@Override public void updateClient() { updateMongoEntity(); session.getKeycloakSessionFactory().publish(new RealmModel.ClientUpdatedEvent() { @Override public ClientModel getUpdatedClient() { return ClientAdapter.this; } @Override public KeycloakSession getKeycloakSession() { return session; } }); }
public boolean removeUser(RealmModel realm, UserModel user, UserProvider userProvider) { if (userProvider.removeUser(realm, user)) { session.getKeycloakSessionFactory().publish(new UserModel.UserRemovedEvent() { @Override public RealmModel getRealm() { return realm; } @Override public UserModel getUser() { return user; } @Override public KeycloakSession getKeycloakSession() { return session; } }); return true; } return false; }
@Override public void removeIdentityProviderByAlias(String alias) { for (IdentityProviderEntity entity : realm.getIdentityProviders()) { if (entity.getAlias().equals(alias)) { IdentityProviderModel model = entityToModel(entity); em.remove(entity); em.flush(); session.getKeycloakSessionFactory().publish(new RealmModel.IdentityProviderRemovedEvent() { @Override public RealmModel getRealm() { return RealmAdapter.this; } @Override public IdentityProviderModel getRemovedIdentityProvider() { return model; } @Override public KeycloakSession getKeycloakSession() { return session; } }); } } }
@Override public RealmModel createRealm(String id, String name) { RealmEntity realm = new RealmEntity(); realm.setName(name); realm.setId(id); em.persist(realm); em.flush(); final RealmModel adapter = new RealmAdapter(session, em, realm); session.getKeycloakSessionFactory().publish(new RealmModel.RealmCreationEvent() { @Override public RealmModel getCreatedRealm() { return adapter; } }); return adapter; }
@Override public boolean removeRole(RealmModel realm, RoleModel role) { session.users().preRemove(realm, role); RoleContainerModel container = role.getContainer(); if (container.getDefaultRoles().contains(role.getName())) { container.removeDefaultRoles(role.getName()); } RoleEntity roleEntity = em.getReference(RoleEntity.class, role.getId()); String compositeRoleTable = JpaUtils.getTableNameForNativeQuery("COMPOSITE_ROLE", em); em.createNativeQuery("delete from " + compositeRoleTable + " where CHILD_ROLE = :role").setParameter("role", roleEntity).executeUpdate(); realm.getClients().forEach(c -> c.deleteScopeMapping(role)); em.createNamedQuery("deleteClientScopeRoleMappingByRole").setParameter("role", roleEntity).executeUpdate(); int val = em.createNamedQuery("deleteGroupRoleMappingsByRole").setParameter("roleId", roleEntity.getId()).executeUpdate(); em.flush(); em.remove(roleEntity); session.getKeycloakSessionFactory().publish(new RoleContainerModel.RoleRemovedEvent() { @Override public RoleModel getRole() { return role; } @Override public KeycloakSession getKeycloakSession() { return session; } }); em.flush(); return true; }
em.clear(); session.getKeycloakSessionFactory().publish(new RealmModel.RealmRemovedEvent() { @Override public RealmModel getRealm() {
@Override public void removeIdentityProviderByAlias(String alias) { for (IdentityProviderEntity entity : realm.getIdentityProviders()) { if (entity.getAlias().equals(alias)) { IdentityProviderModel model = entityToModel(entity); realm.getIdentityProviders().remove(entity); updateRealm(); session.getKeycloakSessionFactory().publish(new RealmModel.IdentityProviderRemovedEvent() { @Override public RealmModel getRealm() { return RealmAdapter.this; } @Override public IdentityProviderModel getRemovedIdentityProvider() { return model; } @Override public KeycloakSession getKeycloakSession() { return session; } }); break; } } }
session.getKeycloakSessionFactory().publish(new RealmModel.ClientRemovedEvent() { @Override public ClientModel getClient() {
session.getKeycloakSessionFactory().publish(event);
@Override public ClientModel addClient(RealmModel realm, String id, String clientId) { if (clientId == null) { clientId = id; } ClientEntity entity = new ClientEntity(); entity.setId(id); entity.setClientId(clientId); entity.setEnabled(true); entity.setStandardFlowEnabled(true); RealmEntity realmRef = em.getReference(RealmEntity.class, realm.getId()); entity.setRealm(realmRef); em.persist(entity); em.flush(); final ClientModel resource = new ClientAdapter(realm, em, session, entity); em.flush(); session.getKeycloakSessionFactory().publish(new RealmModel.ClientCreationEvent() { @Override public ClientModel getCreatedClient() { return resource; } }); return resource; }
session.getKeycloakSessionFactory().publish(event);
@Override public boolean removeClient(String id, RealmModel realm) { if (id == null) return false; final ClientModel client = getClientById(id, realm); if (client == null) return false; session.users().preRemove(realm, client); boolean removed = getMongoStore().removeEntity(MongoClientEntity.class, id, invocationContext); if (removed) { session.getKeycloakSessionFactory().publish(new RealmModel.ClientRemovedEvent() { @Override public ClientModel getClient() { return client; } @Override public KeycloakSession getKeycloakSession() { return session; } }); } return removed; }
@Override public boolean removeRealm(String id) { final RealmModel realm = getRealm(id); if (realm == null) return false; session.users().preRemove(realm); boolean removed = getMongoStore().removeEntity(MongoRealmEntity.class, id, invocationContext); if (removed) { session.getKeycloakSessionFactory().publish(new RealmModel.RealmRemovedEvent() { @Override public RealmModel getRealm() { return realm; } @Override public KeycloakSession getKeycloakSession() { return session; } }); } return removed; }
@Override public RealmModel createRealm(String id, String name) { MongoRealmEntity newRealm = new MongoRealmEntity(); newRealm.setId(id); newRealm.setName(name); getMongoStore().insertEntity(newRealm, invocationContext); final RealmModel model = new RealmAdapter(session, newRealm, invocationContext); session.getKeycloakSessionFactory().publish(new RealmModel.RealmCreationEvent() { @Override public RealmModel getCreatedRealm() { return model; } }); return model; }
session.getKeycloakSessionFactory().publish(new RealmModel.IdentityProviderUpdatedEvent() {
@Override public ClientModel addClient(RealmModel realm, String id, String clientId) { MongoClientEntity clientEntity = new MongoClientEntity(); clientEntity.setId(id); clientEntity.setClientId(clientId); clientEntity.setRealmId(realm.getId()); clientEntity.setEnabled(true); clientEntity.setStandardFlowEnabled(true); getMongoStore().insertEntity(clientEntity, invocationContext); if (clientId == null) { clientEntity.setClientId(clientEntity.getId()); getMongoStore().updateEntity(clientEntity, invocationContext); } final ClientModel model = new ClientAdapter(session, realm, clientEntity, invocationContext); session.getKeycloakSessionFactory().publish(new RealmModel.ClientCreationEvent() { @Override public ClientModel getCreatedClient() { return model; } }); return model; }
session.getKeycloakSessionFactory().publish(new RealmModel.IdentityProviderUpdatedEvent() {