X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=security%2Fplugins%2Forg.argeo.security.ui.admin%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2Fui%2Fadmin%2Fcommands%2FRefreshUsersList.java;h=0904ed2fb0e36645f0c34d87035d2af5bf9945b4;hb=368bd27f3da5356a1e45ae3645f64e674eb89904;hp=c40d4ab5db7b5cd75ceb0ff8ca4dbc6197d073d3;hpb=1d5afdce3e91054f07ddd3c98309c363b4cf1d46;p=lgpl%2Fargeo-commons.git diff --git a/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/commands/RefreshUsersList.java b/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/commands/RefreshUsersList.java index c40d4ab5d..0904ed2fb 100644 --- a/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/commands/RefreshUsersList.java +++ b/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/commands/RefreshUsersList.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2007-2012 Mathieu Baudier + * Copyright (C) 2007-2012 Argeo GmbH * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ import java.util.Set; import javax.jcr.Node; import javax.jcr.NodeIterator; +import javax.jcr.Repository; import javax.jcr.RepositoryException; import javax.jcr.Session; import javax.jcr.query.Query; @@ -35,16 +36,18 @@ import org.eclipse.core.commands.ExecutionException; import org.eclipse.ui.handlers.HandlerUtil; /** - * Refreshes the main EBI list, removing nodes which are not referenced by user + * Refreshes the main user list, removing nodes which are not referenced by user * admin service. */ public class RefreshUsersList extends AbstractHandler { private UserAdminService userAdminService; - private Session session; + private Repository repository; public Object execute(ExecutionEvent event) throws ExecutionException { Set users = userAdminService.listUsers(); + Session session = null; try { + session = repository.login(); Query query = session .getWorkspace() .getQueryManager() @@ -63,6 +66,8 @@ public class RefreshUsersList extends AbstractHandler { } catch (RepositoryException e) { JcrUtils.discardQuietly(session); throw new ArgeoException("Cannot list users", e); + } finally { + JcrUtils.logoutQuietly(session); } userAdminService.synchronize(); @@ -77,8 +82,8 @@ public class RefreshUsersList extends AbstractHandler { this.userAdminService = userAdminService; } - public void setSession(Session session) { - this.session = session; + public void setRepository(Repository repository) { + this.repository = repository; } } \ No newline at end of file