diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.get.json.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.get.json.ftl index 83e952d7d3..dd5aa6a4ce 100644 --- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.get.json.ftl +++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.get.json.ftl @@ -1,7 +1,7 @@ <#import "/org/alfresco/repository/generic-paged-results.lib.ftl" as gen/> <#macro usersecurityclearanceJSON item> - <#local cl=item.classificationLevel> + <#local cl=item.clearanceLevel> <#local pi=item.personInfo> <#escape x as jsonUtils.encodeJSONString(x)> "classificationId": "${cl.id}", diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearance.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearance.java index 83eab84c3d..2ba9705e03 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearance.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearance.java @@ -33,30 +33,31 @@ public final class SecurityClearance implements Serializable { /** Serial version uid */ private static final long serialVersionUID = 8410664575120817707L; - private final PersonInfo personInfo; - private final ClassificationLevel classificationLevel; - public SecurityClearance(final PersonInfo personInfo, final ClassificationLevel classificationLevel) + private final PersonInfo personInfo; + private final ClassificationLevel clearanceLevel; + + public SecurityClearance(final PersonInfo personInfo, final ClassificationLevel clearanceLevel) { Objects.requireNonNull(personInfo); - Objects.requireNonNull(classificationLevel); + Objects.requireNonNull(clearanceLevel); - this.personInfo = personInfo; - this.classificationLevel = classificationLevel; + this.personInfo = personInfo; + this.clearanceLevel = clearanceLevel; } /** Returns the {@link PersonInfo} for this security clearance. */ public PersonInfo getPersonInfo() { return this.personInfo; } /** Returns the {@link ClassificationLevel} for this security clearance. */ - public ClassificationLevel getClassificationLevel() { return this.classificationLevel; } + public ClassificationLevel getClearanceLevel() { return this.clearanceLevel; } @Override public String toString() { StringBuilder msg = new StringBuilder(); msg.append(SecurityClearance.class.getSimpleName()) .append(':').append(personInfo.getUserName()) - .append(" [").append(classificationLevel).append(']'); + .append(" [").append(clearanceLevel).append(']'); return msg.toString(); } @@ -69,8 +70,8 @@ public final class SecurityClearance implements Serializable SecurityClearance that = (SecurityClearance) o; return this.personInfo.equals(that.personInfo) && - this.classificationLevel.equals(that.classificationLevel); + this.clearanceLevel.equals(that.clearanceLevel); } - @Override public int hashCode() { return Objects.hash(personInfo, classificationLevel); } + @Override public int hashCode() { return Objects.hash(personInfo, clearanceLevel); } } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImpl.java index e5cbd57bfb..601b24fe71 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImpl.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImpl.java @@ -68,7 +68,7 @@ public class SecurityClearanceServiceImpl extends ServiceBaseImpl implements Sec if (nodeService.hasAspect(personNode, ASPECT_SECURITY_CLEARANCE)) { final String clearanceLevel = (String)nodeService.getProperty(personNode, PROP_CLEARANCE_LEVEL); - // TODO Should we fall back to a default here or give an error? + classificationLevel = clearanceLevel == null ? classificationService.getDefaultClassificationLevel() : classificationService.getClassificationLevelById(clearanceLevel); } diff --git a/rm-server/unit-test/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImplUnitTest.java b/rm-server/unit-test/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImplUnitTest.java index 82662b38ae..ab1e9b76b2 100644 --- a/rm-server/unit-test/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImplUnitTest.java +++ b/rm-server/unit-test/java/org/alfresco/module/org_alfresco_module_rm/classification/SecurityClearanceServiceImplUnitTest.java @@ -26,9 +26,6 @@ import static org.mockito.Matchers.eq; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -import java.io.Serializable; -import java.util.Map; - import com.google.common.collect.ImmutableMap; import org.alfresco.module.org_alfresco_module_rm.classification.ClassificationServiceException.LevelIdNotFound; import org.alfresco.module.org_alfresco_module_rm.test.util.MockAuthenticationUtilHelper; @@ -46,6 +43,9 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.MockitoAnnotations; +import java.io.Serializable; +import java.util.Map; + /** * Unit tests for {@link SecurityClearanceServiceImpl}. * @@ -97,7 +97,7 @@ public class SecurityClearanceServiceImplUnitTest final SecurityClearance clearance = securityClearanceServiceImpl.getUserSecurityClearance(); - assertEquals("default", clearance.getClassificationLevel().getId()); + assertEquals("default", clearance.getClearanceLevel().getId()); } /** Check that a user can have their clearance set for the first time. */