Commit Graph

174 Commits

Author SHA1 Message Date
Neil McErlean
0da87474c5 RM-2440. Ensuring that users reclassifying content see the correct set of levels.
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
2015-08-04 11:20:07 +00:00
Tom Page
ced35ff207 RM-2470 Change security clearance sorting to be by full name.
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
2015-07-29 15:16:25 +00:00
Tuna Aksoy
4aca887948 RM-2448 (Extend classified document properties view)
RM-2449 (Extend classified record properties view)

+review RM-137

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@109139 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-29 10:25:32 +00:00
Roy Wetherall
c2cb2e11ef Data destruction and cleansing
* 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
2015-07-29 01:26:49 +00:00
Tom Page
39dd741580 RM-2401, RM-2400, RM-2409 Store classification schedule properties.
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
2015-07-27 10:27:16 +00:00
Tom Page
8662f52a48 RM-2400 Add policy for classification schedule properties.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108941 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-24 13:19:09 +00:00
Tom Page
60c41e5843 RM-2401 Pass classification schedule fields when classifying content.
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
2015-07-24 09:36:52 +00:00
Tuna Aksoy
80d1c9ff2d Fixed version number in some java and js files
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108912 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-23 21:38:31 +00:00
Tuna Aksoy
22cf7de3e3 RM-2420 (Add edit classification to ClassifyService Java API)
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108910 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-23 21:14:25 +00:00
Tuna Aksoy
1448fac845 RM-2422 (Reuse existing classify file dialog for edit classification)
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108909 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-23 21:13:05 +00:00
Neil McErlean
86a2d819ac Work that's part of RM-2431 and RM-2432.
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
2015-07-23 16:13:43 +00:00
Roy Wetherall
a37b04fd13 Fixes to classification enforcement:
* 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
2015-07-21 05:30:53 +00:00
Neil McErlean
4b31b3d2e9 Added missing testcase, part of RM-2343. Test ensures that whitespace-only values for 'classified by' result in a 4xx HTTP response.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108248 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-14 11:43:10 +00:00
Tuna Aksoy
fd680d6ec5 RM-2388 (User without any clearance should not see the classify action)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@108131 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-07-10 15:50:55 +00:00
Tuna Aksoy
0ea850d558 RM-2130 (Check classification after method execution, filtering results where appropriate)
- Code refactored

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@107441 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-30 19:15:27 +00:00
Neil McErlean
b37ce590c0 RM-2333, RM-2341, RM-2342, RM-2343, RM-2344, RM-2346.
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
2015-06-30 15:32:47 +00:00
Tuna Aksoy
5ce8ba691a Merged DEV/ENFORCE to HEAD:
105194: First pass at classification interceptor
   105294: Fixed compilation issue
   105323: Updated Aikau version to 1.0.20
   105565: RM-2129 (Check classification before method execution)
   105923: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106103: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106104: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106169: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106187: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106283: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106356: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106552: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106639: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106657: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106658: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106772: RM-2130 (Check classification after method execution, filtering results where appropriate)
   106774: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107009: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107163: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107164: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107246: RM-2130 Post method invocation processor for QueryEngineResults.
   107252: RM-2130 (Post method invocation processor for QueryEngineResults)
   107253: RM-2130 Make CollectionPostMethodInvocationProcessor concrete.
   107257: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107270: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107272: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107273: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107274: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107275: RM-2130 (Check classification after method execution, filtering results where appropriate)
   107282: RM-2130 Add support for other collections than Lists.
   107344: RM-2367 (Automate AC: Access to saved search)
   107355: RM-2130 Support for specific instantiable collections.
   107363: RM-2130 (Check classification after method execution, filtering results where appropriate)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@107367 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-29 21:24:16 +00:00
Tom Page
2ab9c52517 RM-2130 Support for specific instantiable collections.
It's impossible to instantiate/clone a generic collection, so if a member of the collection
changes then our only option is to attempt to remove it.  This has two problems. Firstly,
this is far more brutal than we desire in many cases. Secondly, some collections do not
implement the remove method (e.g. anything returned by Arrays.asList()).

As an attempt to work around this issue we've created some specific implementation
processors. This introduces new potential problems - e.g. if someone has used an exotic
type of list it will be replaced with an ArrayList by the ListPostMethodInvocationProcessor.

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@107355 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-29 15:18:49 +00:00
Tuna Aksoy
53c55fd8c5 RM-2130 (Post method invocation processor for QueryEngineResults)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@107252 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-26 15:28:22 +00:00
Tom Page
858afc00f5 RM-2130 Post method invocation processor for QueryEngineResults.
+review RM @taksoy

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@107246 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-26 14:47:03 +00:00
Neil McErlean
cdcd367e68 RM-2333. Rename ClassificationAuthority to ClassificationAgency. +review RM
This addresses parts of RM-2341, RM-2342, RM-2343 and RM-2344. It replaces authority with agency in the content model
, the services and their APIs, the UI layer and the rm-automation tests.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@107108 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-25 13:24:38 +00:00
Tuna Aksoy
60f1d6af3c Code formatting
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106945 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-24 08:51:45 +00:00
Oana Nechiforescu
3c22ca6312 RM-2324 AC Automation: Invalid values
fix

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106937 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-24 08:42:01 +00:00
Oana Nechiforescu
e313489d25 RM-2324 AC Automation: Invalid values
Added unit tests for ExemptionCategoryFieldsValidator.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106913 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-24 07:58:15 +00:00
Neil McErlean
b41534927e Trivial reformatting done as part of RM-2323.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106839 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-23 10:11:37 +00:00
Tuna Aksoy
5cc5da5e9e RM-2130 (Check classification after method execution, filtering results where appropriate)
+review RM-94

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@106658 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-21 21:58:42 +00:00
Tuna Aksoy
eee6c481ce RM-2130 (Check classification after method execution, filtering results where appropriate)
+review RM-94

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@106657 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-21 19:47:57 +00:00
Tuna Aksoy
cb7811c693 RM-2130 (Check classification after method execution, filtering results where appropriate)
+review RM-94

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@106639 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-20 18:42:32 +00:00
Tom Page
58cd957bd5 RM-2326 Rest API for GET exemption categories.
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106576 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 15:35:32 +00:00
Tom Page
bfb85786b9 RM-2322 Check modifying the exemption categories.
The unit test was already written - just applying the acceptance criteria
to it so we can track where it's tested.

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106568 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 14:53:27 +00:00
Tuna Aksoy
0a0ccbc76c RM-2130 (Check classification after method execution, filtering results where appropriate)
+review RM-94

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@106552 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 12:39:04 +00:00
Tom Page
911f489875 RM-2319 Refactor ClassificationServiceBootstrap.
Simplify code to load classification levels, classification reasons and
exemption categories using the same method.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106530 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 09:52:20 +00:00
Tom Page
06d0c37b25 RM-2319 Validate classification reasons and exemption categories.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106529 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 09:52:18 +00:00
Tom Page
8f5a8334f7 RM-2319 Create a general classification scheme entity validator.
Replace the existing classification level validator with the new class.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106528 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 09:52:13 +00:00
Tom Page
a4948b8a2a RM-2319 Separate the field validation from ClassificationLevelValidation.
Create field validators that are small and potentially re-usable.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106527 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 09:52:10 +00:00
Tom Page
64dbd9174d RM-2319 Refactor ClassificationServiceDAO.
All the config loading is now done by a single method using a factory to
create the individual entities.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106526 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-19 09:52:07 +00:00
Tom Page
ece8e174cb RM-2319 Bootstrap initial exemption categories into the system.
This change does not include any validation. There is currently no
validation being done for classification reasons either, so it seemed
to make sense to do both in a separate change.

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106417 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-17 15:38:10 +00:00
Tuna Aksoy
37b7d1270d RM-2130 (Check classification after method execution, filtering results where appropriate)
+review RM-94

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@106283 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-16 14:30:37 +00:00
Neil McErlean
48702f9045 Additional checkin related to RM-2291. Change the unit test so that it validates only the levels configured by the user (in .json file) and excludes the built-in special case of Unclassified.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106141 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-15 13:24:16 +00:00
Neil McErlean
60e9d56536 Implementation of new tests as part of RM-2241.
Test to ensure the Unclassified abbreviation ('U') is rejected when duplicated by end user configuration.
Test to ensure any duplicate abbreviations are rejected.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106134 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-15 12:04:27 +00:00
Neil McErlean
454e8d9669 Slight change following review comments. Doesn't affect test execution.
--This mine, and those below, will be ignored--

M    ClassificationServiceBootstrapUnitTest.java


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106120 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-15 09:27:43 +00:00
Tuna Aksoy
3fd9a59e14 RM-2280 (Move the code for checking if the content is classified to the service layer)
* moved the check to content classification service
   
+review RM-87

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106090 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-12 20:39:33 +00:00
Tom Page
417164c7cb RM-2217 Allow null as a filter value.
Also add a few unit tests for the file.

+review RM-96

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106034 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-12 13:19:08 +00:00
Tom Page
680eb43441 RM-2217 Filtering with special characters - fix backslash.
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@106011 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-12 10:09:21 +00:00
Neil McErlean
35be98e133 Slight refactor of test code for improved readability following review. Part of RM-2235.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105718 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-08 09:30:42 +00:00
Neil McErlean
d341e3fdc5 Initial implementation of RM-2238, RM-2288, RM-2289 & RM-2290. Classification Abbreviations and tests.
In fact, this is pretty much done. Still to do: Unclassified Abbreviation.

New class ClassificationLevelValidation which contains the various validation checks for level abbreviations. Unit tests for same. This new class is used by ClassificationServiceBootstrap.
Added a new exception type just so that we have somewhere to store any illegal characters in a level abbreviation.
Had to change the classification level IDs to “TS”, “S” & “C” as “Confidential” has a length > 10. I’d been thinking of doing this is a separate commit but the additional validation requires that we do it now.
Minor fallout in test code due to ID changes.



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105641 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-05 15:58:10 +00:00
Tuna Aksoy
d9dc7c7e52 RM-2260 (Users with read&file permissions on content can not classify it if they are not the owners)
+review RM @rwetherall

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105541 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-04 15:41:00 +00:00
Neil McErlean
149bcaf2d5 Fix for slight coding issue - note there are no recorded problems from this.
Replaced String == with String.equals.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105496 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-03 20:23:04 +00:00
Tuna Aksoy
ce10e38225 RM-2247 (Add classification banner to document details)
RM-2248 (Add classification banner to record details)

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105441 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-03 09:46:09 +00:00
Tom Page
ea0548bdf8 Rename ClassificationService to ClassificationSchemeService.
Also rename ClassificationServiceException to ClassificationException.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105317 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-02 10:20:37 +00:00