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
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
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
Tom Page
1becb69355
Fix failing test on Sonar build.
...
Avoid calling the I18N utility by checking the display label key directly.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105312 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-02 09:21:30 +00:00
Tuna Aksoy
e46ec39aa7
RM-2208 (Prevent classification of shared content)
...
+review RM @rwetherall
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105284 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 13:32:12 +00:00
Tuna Aksoy
1acae0e403
RM-2203 (Show selected classification reason id's rather than description)
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105215 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 10:08:26 +00:00
Tom Page
16bde534af
Use mock in unit test for ClearanceLevelManager.
...
Although I'm not sure exactly why this unit test failed on the Sonar build,
it seems sensible to remove the dependency on another class by using a mock.
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105192 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 07:59:10 +00:00
Tom Page
587786c2de
RM-2123 Ensure user has clearance to classify content.
...
Also add clearance check method into security profile.
+review RM-58
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104750 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-22 13:20:00 +00:00
Tom Page
3dc6ed9a71
RM-2123 Use runAsAuthentication instead of actual authentication.
...
Check that the user the command is run as has clearance to view the
classification levels, rather than the user that initiated the command.
+review RM-58
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104729 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-22 08:43:12 +00:00
Tom Page
80634961a9
RM-2123 Move clearance checking to SecurityClearanceService.
...
Refactor ContentClassificationService#hasClearance so that it calls out to
SecurityClearanceService#isCurrentUserClearedForClassification. Restrict
isCurrentUserClearedForClassification so that it only applies to the current
authenticated user (we don't need to use it for anything else). Also
extract classification level comparison to a new class.
+review RM-58
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104568 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-20 08:28:46 +00:00
Tom Page
d4b7eaa3bc
RM-2123 Don't create a user called system.
...
Also add special check in clearance service that gives system user maximum
clearance.
+review RM-58
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104480 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-19 09:57:02 +00:00
Tuna Aksoy
4f5b1eb69a
Removed warnings
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104477 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 21:24:33 +00:00
Neil McErlean
672253dda2
Added some javadoc to clarify that ExceptionUtils.expectedException doesn't try to work around checked exceptions.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104391 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 15:11:16 +00:00
Tom Page
5f6cf2187a
RM-2123 Give clearance to the admin and system users.
...
Make sure this is executed as a patch and also bootstrapped into a clean
system using the BootstrapImporterModuleComponent.
Also restrict access to the classification levels (via the get API) to
only the levels that the user has clearance to.
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104376 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 15:03:59 +00:00
Tom Page
582c179382
RM-2123 Create a new service for content classification.
...
Move methods to do with content from the ClassificationService and the
SecurityClearanceService into the ContentClassificationService.
Remove the dependency of SecurityClearanceService on ClassificationService
which will allow us to reverse this dependency in the next commit. This is
needed in order to filter classifications by the current user's clearance.
Nb. This included adding a method in the SecurityClearanceService called
isClearedForClassification, which looks quite similar to a new API Roy
created hasClearance (see ContentClassificationService). In the future we
should look to see if we can consolidate these.
Remove dependency of ClassificationServiceBootstrap on the services, so that
it can be passed into them. This allows us to provide access to the POJO
managers in the services (this is made harder as the POJO managers aren't
Spring beans). In order to initialise these objects, change the POJO
managers to use setters rather than constructor arguments. This allows us
to store a reference to the manager before the data has been loaded.
Move the attribute service keys for classification levels and reasons into
the ClassifiedContentModel.
Expect NO_CLEARANCE to be passed into the ClearanceLevelManager, as
otherwise we have to have logic to exclude it (see initialise in the old
SecurityClearanceService) and then more logic to include it again (see the
old constructor for ClearanceLevelManager).
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104375 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 15:03:57 +00:00
David Webster
d7f0120fa1
RM-2197: Adds missing unit tests, as identified by Tom during +review RM-56
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104306 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 16:09:36 +00:00
David Webster
b253e192d5
RM-2120: More accurate error checking in test, as almost suggested by Neil during +review RM-46
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104296 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 14:51:56 +00:00
David Webster
e5c5b2f9b5
RM-2197: Create REST GET API to return clearance levels
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104246 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 10:04:52 +00:00
Roy Wetherall
f0a50ac432
Added 'hasClearance' method to SecurityClearanceService to support EntryVoter and AfterInvocationProvider implementations
...
* relates to RM-2129 & RM-2130
* added 'getCurrentClassification" method to ClassificationService
* added concept of system classification level "Unclassified" .. it no longer is required to be specified in the JSON bootstrap since this is a well known and alway required basic classification level
* added concept of system security clearance level "No Clearance" .. automatically added and relates to unclassified classificaiton level
* unit tests updated and added
* started to move some of the logic out of unit test base class and into helper library called 'AlfMock'!
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104229 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 03:21:08 +00:00
David Webster
0b70bfa133
RM-2120: Add error handling (and test) as suggested by Neil during + review RM-46
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104157 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-14 10:58:19 +00:00
Tuna Aksoy
21893ae3f2
RM-2206 (Dynamic test suite configuration)
...
+review RM-49
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104045 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-12 19:58:34 +00:00
Tuna Aksoy
1a33dfc7e7
RM-2206 (Dynamic test suite configuration)
...
+review RM-49
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104044 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-12 19:16:04 +00:00
Tuna Aksoy
bb5b98d7cf
RM-2206 (Dynamic test suite configuration)
...
+review RM @rwetherall
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104021 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-12 15:22:11 +00:00
Tuna Aksoy
33f2483f40
Fixed test name in the AllUnitTestSuite
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103976 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-11 14:38:03 +00:00
Tom Page
df8bf4aa4b
RM-2197 Replace "No Clearance" with "Unclassified" in list of levels.
...
Created a notion of clearance level distinct from (but related to)
classification level. A clearance level references the highest
classification level it has access to. A SecurityClearance now contains a
ClearanceLevel, which in turn contains a ClassificationLevel.
Created a ClearanceLevelManager and initialise it at the same time as the
ClassificationLevelManager.
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103929 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-11 08:16:03 +00:00
Tom Page
0cf19c441c
Revert RM-2123 Update Java API to filter with current user's clearance.
...
The circular dependency causes a problem when loading the Spring context.
Reverting to rethink the approach.
+review RM-47
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103856 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-08 09:26:27 +00:00
Tom Page
3590b9327d
RM-2123 Update Java API to filter with current user's clearance.
...
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103851 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-08 08:11:58 +00:00
David Webster
d1dc0d1875
RM-2120: Add unit test for usersecurityclearance.put webscript & add it (and get) to test suite
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103829 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-07 14:04:26 +00:00
David Webster
98155a3147
RM-2119: Update Java API to return the security clearance object when setting it.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103826 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-07 13:58:16 +00:00
Tom Page
abcd43455c
RM-2119 Don't need to explicitly apply the aspect.
...
By setting the property on the node the aspect will be applied
automatically if it hasn't already been applied.
+review RM-45
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103786 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-07 07:59:44 +00:00
Neil McErlean
568a7c1dc8
Moer RM-2113 review comments. Renaming SecurityClearance.getClassificationLevel to getClearanceLevel
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103782 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 16:26:50 +00:00
Tom Page
07ce45fec8
RM-2119 Java API to change a user's security clearance.
...
+review RM
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103777 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 15:27:35 +00:00
Neil McErlean
a0c9b6dc73
Initial unit tests for RM-2113.
...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103745 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 07:33:24 +00:00
Tuna Aksoy
1b1056523d
RM-2114 (REST API to GET users security clearance)
...
+review RM-43
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103743 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-05 21:54:49 +00:00