* extended version service implementation that can use the file plan as an alternative version store, thus recording versions
* extended version node service implementation that can retrieve recorded version information from the file plan (rather than the version frozen state) (properties only atm)
* recordable version model including recorded version information and versionable aspect extension with auto recordable version policy defined
* Recordable version service unit tests
* Simple AdHoc recorded version integration test (shows recorded created and frozen property state recovered via file plan record)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@80223 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* focus on in-place scenarios with large numbers of DM users and large numbers of in-place records (based on issue informally reported by partner)
* improve performance of dynamic authorities used for in-place security evaluation (L1 transaction cache and more preformant authority look up)
* remove unwanted queries in tree (N+1 for every node) .. killed it for large file plans
* L1 transaction cache for capability condition evaluation .. these are called a LOT so removes some of the bottle necks when evaluating the permissions of a large sets of nodes
* extend helper system test used to load up fileplan and now also create in-place records
* unit and integration tests run .. sanity testing done via the UI
* overall performance of the display of 1000 in-place records in the file plan down from minutes to a few seconds!
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@75186 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
RM-1505: Search Results: Hold Reason field is empty
* specific filtering for ViewHoldReason capability removed .. no longer required as we specify user permissions at the hold level
* deprecated hold related actions are no longer auditable (and so don't appear in the audit view)
* hold service Audits add/remove to/from holds
* hold reason is no longer rolled up onto disposable item .. it no longer makes sense for multiple holds and was a security hole
* hold reason removed from search options
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@74611 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* general file plan browse rendering in around half the previously recorded times for around 500 records (need to scale up)
* unessesary bottle neck removed from record detail page rendering (see RM-1461)
* other general improvements
* TODO .. hasFrozenChildren, getNextDisposition, TransferNodeIndicator, HeldBy .. all traverse up or down record/record folder hierarchy in ways that don't scale
* fix to disposition lifecycle job that failed all when one failed .. this explains why the job appeared not to work on occasion
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@74458 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* remove in-place roles from the 'all roles' group .. now in-place readers and writers can't gain access to items just because they have a role!
* patch to remove in-place roles from all group in existing installations
* unit test for patch
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@73532 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* fix issues so that RM 2.2 is still backwards compatible with 4.2.1 (and 4.2.0)
* added 'bean extender' .. a post processor bean that allows us to extend, rather than overrite, core bean definitions. Gives us a technique we can use that won't be disrupted when changes are made to core bean definitions.
* unit test for above
* tested with 4.2.2-SNAPSHOT and 4.2.1
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@68290 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* FileHoldReport capability added (and patched)
* hold report type added to report model
* hold template added, bootstraped (and patched)
* UI action to file hold report added and sensitive to capability
* report actions refactored into a single, general purpose, file report action (can be exposed as rule in future)
* refactoring and extending of report generators (including declarative report generator)
* unit test for file report action
* integration test for hold report generation
* added Sprin custom property editor registrar and registered QName property editor, this allows short name string forms of
QNames to be specified and converted to QName from bean definitions (perhaps something useful for core)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@68235 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* read permissions not inherited to root categories, holds or items in the root of the unfiled record container .. this matches
the current behaviour of the file plan and is a partial work around for the issue of inheriting "path" read permissions vs actual read permissions.
* consolidation of permission initialisation code (there is only one route now)
* resolved RM-1317
* unit tests
* update server integration tests
* knock on minor simplifications on the file plan and transfer service
* moved more frequently used methods into the service base to reduce unessesary service interlinking
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@67030 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* unit tests to show unfiled and holds permissions working correctly
* fixed issues exposed by above
* minor refactor for FilePlanPermissionService implementation to reduce complexity
* added unit test execution to local build target
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@66102 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Sub-tasks:
* RM-1400 (Change the service so that all holds will be retrieved when adding multiple records/folders)
* RM-1402 (Change the REST API so that all holds will be retrieved when adding multiple records/folders)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@65918 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* HoldService API explanded beyound immediate use case needs to form a more complete API, plus some tweaks to method names
* unit test (via Mockito) added .. still some todo's (see RM-1326)
* integration test added .. to test behaviour interactions (see RM-1326)
* method level permissions added to Hold service .. should see filtering of results based on permissions
* added behaviour to HoldService to unfreeze records and record folders when hold is deleted (same as old relinquish action)
* deprecation of dupliacte methods found in FreezeService
* fix up use of deprecated methods throughout code .. note that warnings have only been hidden in actions that are soon to be deprecated too
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@64834 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* record metadata aspects are now configured via spring and includes which file plan type they are relevant for
* added 'unit test' structure .. for 'real' unit tests, ie anything that doesn't load the application context
* included Mockito, new source location and unit test suite into POM
* added unit and functional tests for feature (server)
* refactored accordingly (webscripts, UI, etc)
* visual test of UI .. automation tests to follow
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@63013 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261