X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=security%2Fplugins%2Forg.argeo.security.ui.admin%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2Fui%2Fadmin%2Feditors%2FArgeoUserEditor.java;h=9e564a4af515d2c7c7df4be7eab804fe3557985c;hb=9ba6c016cc5f9ae5a126d64a5e89d9edb2cfa2ad;hp=2daae6321d7576acc96281cb3041acafc9d86cd3;hpb=61320e5902070e49d32379aab06faaa1544835ab;p=lgpl%2Fargeo-commons.git diff --git a/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/editors/ArgeoUserEditor.java b/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/editors/ArgeoUserEditor.java index 2daae6321..9e564a4af 100644 --- a/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/editors/ArgeoUserEditor.java +++ b/security/plugins/org.argeo.security.ui.admin/src/main/java/org/argeo/security/ui/admin/editors/ArgeoUserEditor.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. @@ -16,6 +16,7 @@ package org.argeo.security.ui.admin.editors; import javax.jcr.Node; +import javax.jcr.Repository; import javax.jcr.RepositoryException; import javax.jcr.Session; @@ -35,13 +36,16 @@ import org.springframework.security.GrantedAuthority; /** Editor for an Argeo user. */ public class ArgeoUserEditor extends FormEditor { - public final static String ID = "org.argeo.security.ui.admin.adminArgeoUserEditor"; + public final static String ID = SecurityAdminPlugin.PLUGIN_ID + + ".adminArgeoUserEditor"; + + /* DEPENDENCY INJECTION */ + private Session session; + private UserAdminService userAdminService; - private JcrUserDetails userDetails; // private Node userHome; private Node userProfile; - private UserAdminService userAdminService; - private Session session; + private JcrUserDetails userDetails; public void init(IEditorSite site, IEditorInput input) throws PartInitException { @@ -108,11 +112,14 @@ public class ArgeoUserEditor extends FormEditor { userRolesPage.setUserDetails(userDetails); + // FIXME rather use a refresh command. Fails when called by another + // view. // refresh users view IWorkbench iw = SecurityAdminPlugin.getDefault().getWorkbench(); UsersView usersView = (UsersView) iw.getActiveWorkbenchWindow() .getActivePage().findView(UsersView.ID); - usersView.refresh(); + if (usersView != null) + usersView.refresh(); } @Override @@ -129,11 +136,16 @@ public class ArgeoUserEditor extends FormEditor { userRolesPage.refresh(); } + /* DEPENDENCY INJECTION */ public void setUserAdminService(UserAdminService userAdminService) { this.userAdminService = userAdminService; } - public void setSession(Session session) { - this.session = session; + public void setRepository(Repository repository) { + try { + session = repository.login(); + } catch (RepositoryException re) { + throw new ArgeoException("Unable to initialise local session", re); + } } }