Previously we were restricting the initial classification to be a level
that the current user could access, but this is not always the case for
downgraded content.
Also add new integration test for initial classification constraint.
I tried adding a test that extended our BaseRMTestCase, but the
transactions all happened as system (or admin maybe?), and so the level 2
user is always allowed to reclassify level 1 content (by the constraint).
Consequently I ended up creating a stand-alone test for this.
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@110144 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This checkin adds behaviours for ensuring that classification aspect/properties are correclty copied between nodes and their renditions on the creation of new renditions, on the classification or reclassification of nodes with existing renditions.
To do this I needed what should be, in my opinion, a common Alfresco utility method - the ability to copy an aspect from one node to another (aspect meaning property group i.e. no assocs).
I've created that method and put it in CoreServicesExtras. It should really be moved to core.
+ review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@110069 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Allow adding and removing classification levels, classification reasons and
exemption categories after the server has been started for the first time.
It is also possible to alter the display text associated with an existing
level, reason or category. All changes require a server restart.
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@109854 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Added a new test case where an admin and an RM Manager (only cleared to secret) both try to reclassify a record.
Added a new group (GROUP_RM_MANAGER_FILE_CATEGORY_ONE) for an RM Manager who can file records as well as read.
Added some utility methods and fields.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@109524 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Enable sorting by multiple fields and configure the security clearance page
to use first name, last name and then fall back to user name as a tie
breaker.
The rm-automation test fails for me locally, as the person search is case
sensitive. I'm pushing this anyway because Bamboo didn't protest at the
old sorting method (which also failed locally due to case sensitivity).
Remove "final" from UserQueryParams so it can be mocked.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@109169 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* added content destruction component which ensures all records and classified content are immediately destroyed and optionally cleansed
* extension to eager content cleaner to allow cleansing to take place just before the content is deleted from the content store
* base content cleanser
* simple implementation of DoD 5220-22M cleansing algoritm
* data cleansing enabled global configuration
* data cleansing bean configuration
* unit tests
* see RM-2463 and RM-2464
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@109121 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Update Java API to store the classification schedule properties.
Fix the classification aspect behaviour to check newly classified
documents.
Add an application context test that the downgrade instructions are
mandatory when the downgrade date is set.
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@109015 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Create a new data transfer object and add all the classification fields to
it. Update everywhere we're classifying content with the API to use the
data transfer object. Also update the new edit classification API.
Break the classifyContent implementation into several smaller methods and
update unit tests to target these methods.
Don't actually use new fields in this commit, as there was plenty in this
commit as it was!
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108928 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Added to the classified-content-model - various properties as described in RM-2431 along with a constraint on Reclassification Action.
Addition to the ClassificationSchemeService of methods and types associated with Reclassification. (Upgrade, Downgrade, Declassify). See RM-2432.
Behaviour bean that will automatically set lastReclassificationAction and lastReclassifyBy in response to any change to currentClassificationLevel.
Also some util methods in RMCollections.
Fixed some spelling mistakes in classification-related properties.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108878 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
* only process services that start with an upper case character. We were being over zealous in our checking which was causing problems, we only care about public services.
* add enable/disable/isenabled methods to pre-processor
* switch off pre-processing when post-processing
* remove method black list
* unit tests, integration tests and UI tests run locally
+review RM @taksoy
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108613 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Change PagingResultsPostMethodInvocationProcessor to always return the
total results count as if nothing is filtered. This should fix the case
where nothing is filtered, and is a concession to the fact that we cannot
know how many total results there will be from a single page. We will fix
this later by filtering the results before we get to this processor, but
the processor is a good backup filter.
Change the rm-automation tests not to use the pagination details at the
bottom of the browse list pages, as these will often now be incorrect.
In making this change I also looked at using the getTotalResultCount()
interface with a range as the interface supports returning a minimum and
maximum on the total number of results. This would be very useful here,
as it should allow us to say that we don't know how many results there
will be. However most of the webscripts don't support a range, and so
this leads to some odd results in Share (e.g. 'Showing results 1 to 50
of -1').
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108482 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Changed Classification Agency to optional throughtout the stack and added a new mandatory property Classified By throughout the stack.
Addressing the fallout in the existing tests due to these changes.
Also enhanced some existing tests to validate the classified by value persistence.
Still to do: need to initialise the Classified By field in the Classify dialog to the current user's full name (not as easy as I'd thought) and add additional AC tests.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@107433 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261