--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.ui.perspectives">
+ <perspective
+ class="org.argeo.security.ui.admin.SecurityAdminPerspective"
+ icon="icons/security.gif"
+ id="org.argeo.security.ui.admin.adminSecurityPerspective"
+ name="Security">
+ </perspective>
+ </extension>
+
+ <!-- VIEWS -->
+ <extension
+ point="org.eclipse.ui.views">
+ <view
+ class="org.argeo.eclipse.spring.SpringExtensionFactory"
+ icon="icons/users.gif"
+ id="org.argeo.security.ui.admin.usersView"
+ name="Users"
+ restorable="true">
+ </view>
+ <view
+ class="org.argeo.eclipse.spring.SpringExtensionFactory"
+ icon="icons/role.gif"
+ id="org.argeo.security.ui.admin.groupsView"
+ name="Groups"
+ restorable="false">
+ </view>
+ </extension>
+
+ <!-- EDITORS -->
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+ class="org.argeo.eclipse.spring.SpringExtensionFactory"
+ id="org.argeo.security.ui.admin.userEditor"
+ name="User"
+ icon="icons/user.gif"
+ default="false">
+ </editor>
+ <editor
+ class="org.argeo.eclipse.spring.SpringExtensionFactory"
+ id="org.argeo.security.ui.admin.groupEditor"
+ name="User"
+ icon="icons/users.gif"
+ default="false">
+ </editor>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.commands">
+ <!-- User CRUD -->
+ <command
+ id="org.argeo.security.ui.admin.newUser"
+ defaultHandler="org.argeo.eclipse.spring.SpringCommandHandler"
+ name="New User">
+ </command>
+ <command
+ id="org.argeo.security.ui.admin.deleteUsers"
+ defaultHandler="org.argeo.eclipse.spring.SpringCommandHandler"
+ name="Delete User">
+ </command>
+ <command
+ defaultHandler="org.argeo.eclipse.spring.SpringCommandHandler"
+ id="org.argeo.security.ui.admin.userBatchUpdate"
+ name="User batch update">
+ </command>
+ <!-- Group CRUD -->
+ <command
+ id="org.argeo.security.ui.admin.newGroup"
+ defaultHandler="org.argeo.eclipse.spring.SpringCommandHandler"
+ name="New Group">
+ </command>
+ <command
+ id="org.argeo.security.ui.admin.deleteGroups"
+ defaultHandler="org.argeo.eclipse.spring.SpringCommandHandler"
+ name="Delete Group">
+ </command>
+ <!-- Transaction -->
+ <command
+ id="org.argeo.security.ui.admin.userTransactionHandler"
+ defaultHandler="org.argeo.eclipse.spring.SpringCommandHandler"
+ name="Manage a user transaction">
+ <commandParameter
+ id="param.commandId"
+ name="begin, commit or rollback">
+ </commandParameter>
+ </command>
+
+ <!-- Force the refresh when the various listener are not enough -->
+ <command
+ defaultHandler="org.argeo.security.ui.admin.internal.commands.ForceRefresh"
+ id="org.argeo.security.ui.admin.forceRefresh"
+ name="Force Refresh">
+ </command>
+ </extension>
+
+ <!-- MENU CONTRIBUTIONS -->
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="toolbar:org.argeo.security.ui.rap.userToolbar?after=org.eclipse.ui.file.saveAll">
+ <!-- Transaction management -->
+ <command
+ commandId="org.argeo.security.ui.admin.userTransactionHandler"
+ icon="icons/commit.gif"
+ label="Commit Transaction"
+ style="push"
+ tooltip="Commit a user transaction">
+ <parameter name="param.commandId" value="transaction.commit" />
+ <visibleWhen>
+ <with variable="org.argeo.security.ui.admin.userTransactionState">
+ <equals value="status.active" />
+ </with>
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.argeo.security.ui.admin.userTransactionHandler"
+ icon="icons/rollback.gif"
+ label="Rollback Transaction"
+ style="push"
+ tooltip="Abandon current changes and rollback to the latest commited version">
+ <parameter name="param.commandId" value="transaction.rollback" />
+ <visibleWhen>
+ <with variable="org.argeo.security.ui.admin.userTransactionState">
+ <equals value="status.active" />
+ </with>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+
+ <!-- UsersView specific toolbar menu -->
+ <menuContribution
+ locationURI="toolbar:org.argeo.security.ui.admin.usersView">
+ <command
+ commandId="org.argeo.security.ui.admin.deleteUsers"
+ icon="icons/remove.gif"
+ label="Delete User"
+ tooltip="Delete selected users">
+ </command>
+ <command
+ commandId="org.argeo.security.ui.admin.forceRefresh"
+ icon="icons/refresh.png"
+ label="Refresh list"
+ tooltip="Force the full refresh of the user list">
+ </command>
+ <command
+ commandId="org.argeo.security.ui.admin.newUser"
+ icon="icons/add.gif"
+ label="Add User"
+ tooltip="Create a new user">
+ </command>
+ <command
+ commandId="org.argeo.security.ui.admin.userBatchUpdate"
+ icon="icons/batch.gif"
+ label="Update users"
+ tooltip="Perform maintenance activities on a list of chosen users">
+ </command>
+ </menuContribution>
+
+ <!-- GroupsView specific toolbar menu -->
+ <menuContribution
+ locationURI="toolbar:org.argeo.security.ui.admin.groupsView">
+ <command
+ commandId="org.argeo.security.ui.admin.deleteGroups"
+ icon="icons/remove.gif"
+ label="Delete Group"
+ tooltip="Delete selected groups">
+ </command>
+ <command
+ commandId="org.argeo.security.ui.admin.forceRefresh"
+ icon="icons/refresh.png"
+ label="Refresh list"
+ tooltip="Force the full refresh of the group list">
+ </command>
+ <command
+ commandId="org.argeo.security.ui.admin.newGroup"
+ icon="icons/add.gif"
+ label="Add Group"
+ tooltip="Create a new group">
+ </command>
+ </menuContribution>
+
+ <!-- <menuContribution
+ locationURI="toolbar:org.argeo.security.ui.admin.adminRolesView">
+ <command
+ commandId="org.argeo.security.ui.admin.refreshRoles"
+ icon="icons/sync.gif"
+ label="LDAP Roles Sync"
+ tooltip="Synchronize roles from LDAP">
+ </command>
+ </menuContribution> -->
+ </extension>
+
+ <!-- SERVICES -->
+ <extension
+ point="org.eclipse.ui.services">
+ <sourceProvider
+ id="org.argeo.security.ui.admin.userTransactionProvider"
+ provider="org.argeo.eclipse.spring.SpringExtensionFactory" >
+ <variable
+ name="org.argeo.security.ui.admin.userTransactionState"
+ priorityLevel="workbench">
+ </variable>
+ </sourceProvider>
+ </extension>
+
+ <!-- ACTIVITIES -->
+ <extension
+ point="org.eclipse.ui.activities">
+ <!-- group admin is intended to make all user and group maintenance operations -->
+ <!--<activityPatternBinding
+ activityId="org.argeo.security.ui.userAdminActivity"
+ isEqualityPattern="true"
+ pattern="org.argeo.security.ui.admin/org.argeo.security.ui.admin.adminSecurityPerspective">
+ </activityPatternBinding>-->
+ <activityPatternBinding
+ activityId="org.argeo.security.ui.groupAdminActivity"
+ isEqualityPattern="true"
+ pattern="org.argeo.security.ui.admin/org.argeo.security.ui.admin.adminSecurityPerspective">
+ </activityPatternBinding>
+ </extension>
+
+ <!-- STARTUP -->
+ <extension point="org.eclipse.ui.startup">
+ <startup class="org.argeo.security.ui.admin.internal.PartStateChanged"/>
+ </extension>
+</plugin>
\ No newline at end of file