</property>\r
</bean>\r
\r
- <bean id="session" class="org.argeo.security.jcr.SecureThreadBoundSession">\r
- <property name="repository" ref="nodeRepository" />\r
- </bean>\r
-\r
+ <!-- FIXME Hard-coded dependency to Jackrabbit for user management -->\r
<bean name="jcrSecurityModel" class="org.argeo.security.jackrabbit.JackrabbitSecurityModel" />\r
\r
+ <!-- Old deprecated way. -->\r
+ <!-- <bean id="session" class="org.argeo.security.jcr.SecureThreadBoundSession"> \r
+ <property name="repository" ref="nodeRepository" /> </bean> -->\r
</beans>
\ No newline at end of file
<bean id="adminArgeoUserEditor" class="org.argeo.security.ui.admin.editors.ArgeoUserEditor"
scope="prototype">
<property name="userAdminService" ref="userAdminService" />
- <property name="session" ref="session" />
+ <property name="repository" ref="nodeRepository" />
</bean>
</beans>
<bean id="adminUsersView" class="org.argeo.security.ui.admin.views.UsersView"
scope="prototype">
- <property name="session" ref="session" />
+ <property name="repository" ref="nodeRepository" />
+ <!-- <property name="session" ref="session" /> -->
</bean>
<bean id="adminRolesView" class="org.argeo.security.ui.admin.views.RolesView"
package org.argeo.security.ui.admin.editors;
import javax.jcr.Node;
+import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
/** 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 {
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);
+ }
}
}
/** List all roles. */
public class RolesView extends ViewPart {
- public final static String ID = "org.argeo.security.ui.admin.adminRolesView";
+ public final static String ID = SecurityAdminPlugin.PLUGIN_ID
+ + ".adminRolesView";
private Text newRole;
package org.argeo.security.ui.admin.views;
import javax.jcr.Node;
+import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.observation.Event;
public final static String ID = SecurityAdminPlugin.PLUGIN_ID
+ ".adminUsersView";
- private UserTableComposite userTableCmp;
+ /* DEPENDENCY INJECTION */
private Session session;
+
+ private UserTableComposite userTableCmp;
private JcrUserListener userStructureListener;
private JcrUserListener userPropertiesListener;
public void dispose() {
JcrUtils.removeListenerQuietly(session, userStructureListener);
JcrUtils.removeListenerQuietly(session, userPropertiesListener);
+ JcrUtils.logoutQuietly(session);
super.dispose();
}
- public void setSession(Session session) {
- this.session = session;
- }
+ // public void setSession(Session session) {
+ // this.session = session;
+ // }
public void refresh() {
this.getSite().getShell().getDisplay().asyncExec(new Runnable() {
}
}
}
+
+ /* DEPENDENCY INJECTION */
+ public void setRepository(Repository repository) {
+ try {
+ session = repository.login();
+ } catch (RepositoryException re) {
+ throw new ArgeoException("Unable to initialise local session", re);
+ }
+ }
+
}
\ No newline at end of file