chemistry-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From j...@apache.org
Subject svn commit: r1516753 [3/8] - in /chemistry/opencmis/trunk/chemistry-opencmis-server: chemistry-opencmis-server-inmemory/src/main/java/org/apache/chemistry/opencmis/inmemory/ chemistry-opencmis-server-inmemory/src/main/java/org/apache/chemistry/opencmis...
Date Fri, 23 Aug 2013 08:53:50 GMT
Modified: chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-inmemory/src/test/java/org/apache/chemistry/opencmis/inmemory/AclPermissionsTest.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-inmemory/src/test/java/org/apache/chemistry/opencmis/inmemory/AclPermissionsTest.java?rev=1516753&r1=1516752&r2=1516753&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-inmemory/src/test/java/org/apache/chemistry/opencmis/inmemory/AclPermissionsTest.java (original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-inmemory/src/test/java/org/apache/chemistry/opencmis/inmemory/AclPermissionsTest.java Fri Aug 23 08:53:49 2013
@@ -45,33 +45,33 @@ import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class AclPermissionsTest extends AbstractServiceTest  {
+public class AclPermissionsTest extends AbstractServiceTest {
+
+    private static Logger LOG = LoggerFactory.getLogger(AclPermissionsTest.class);
+    private static final BigInteger MINUS_ONE = BigInteger.valueOf(-1L);
 
-	private static Logger LOG = LoggerFactory.getLogger(AclPermissionsTest.class);
-	private static final BigInteger MINUS_ONE = BigInteger.valueOf(-1L);
-	
     protected ObjectCreator fCreator;
-	protected ObjectStore objectStore = null;
-	protected List<Ace> addACEs = null;
-	protected Acl addAcl = null;
-	protected List<Ace> standardACEs = null;
-	protected Acl standardAcl = null;
-	protected List<Ace> noReadACEs = null;
-	protected Acl noReadAcl = null;
-	protected List<Ace>readACEs = null;
-	protected Acl readAcl = null;
-	protected List<Ace>readWriteACEs = null;
-	protected Acl readWriteAcl = null;
-	protected List<Ace> writerReadACEs = null;
-	protected Acl writerReadAcl = null;
-	protected List<Ace> adminACEs = null;
-	protected Acl adminAcl = null;
-	protected List<Ace> testUserACEs = null;
-	protected Acl testUserAcl = null;
-	protected Acl defaultAcl = null;
-	
-	protected static Map<String, String> idMap = new HashMap<String, String>();
-	
+    protected ObjectStore objectStore = null;
+    protected List<Ace> addACEs = null;
+    protected Acl addAcl = null;
+    protected List<Ace> standardACEs = null;
+    protected Acl standardAcl = null;
+    protected List<Ace> noReadACEs = null;
+    protected Acl noReadAcl = null;
+    protected List<Ace> readACEs = null;
+    protected Acl readAcl = null;
+    protected List<Ace> readWriteACEs = null;
+    protected Acl readWriteAcl = null;
+    protected List<Ace> writerReadACEs = null;
+    protected Acl writerReadAcl = null;
+    protected List<Ace> adminACEs = null;
+    protected Acl adminAcl = null;
+    protected List<Ace> testUserACEs = null;
+    protected Acl testUserAcl = null;
+    protected Acl defaultAcl = null;
+
+    protected static Map<String, String> idMap = new HashMap<String, String>();
+
     @Override
     @After
     public void tearDown() {
@@ -84,1239 +84,1073 @@ public class AclPermissionsTest extends 
         super.setTypeCreatorClass(UnitTestTypeSystemCreator.class.getName());
         super.setUp();
         fCreator = new ObjectCreator(fFactory, fObjSvc, fRepositoryId);
-		 List<String> principalIds = new ArrayList<String>(3);
-		 principalIds.add("TestAdmin");
-		 principalIds.add("Writer");
-		 principalIds.add("Reader");
-		 principalIds.add("TestUser");
-		addACEs = new ArrayList<Ace>(4);
-		addACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		addACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
-		addACEs.add(createAce("TestUser", EnumBasicPermissions.CMIS_WRITE));
-		addACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		addAcl = fFactory.createAccessControlList(addACEs);
-		
-		standardACEs = new ArrayList<Ace>(3);
-		standardACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		standardACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
-		standardACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		standardAcl = fFactory.createAccessControlList(standardACEs);	
-		
-		noReadACEs = new ArrayList<Ace>(2);
-		noReadACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		noReadACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
-		noReadAcl = fFactory.createAccessControlList(noReadACEs);	
-		
-		readACEs = new ArrayList<Ace>(1);
-		readACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		readAcl = fFactory.createAccessControlList(readACEs);	
-		
-		readWriteACEs = new ArrayList<Ace>(2);
-		readWriteACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		readWriteACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
-		readWriteAcl = fFactory.createAccessControlList(readWriteACEs);	
-		
-		testUserACEs = new ArrayList<Ace>(1);
-		testUserACEs.add(createAce("TestUser", EnumBasicPermissions.CMIS_WRITE));
-		testUserAcl = fFactory.createAccessControlList(testUserACEs);	
-		
-		writerReadACEs = new ArrayList<Ace>(1);
-		writerReadACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_READ));
-		writerReadAcl = fFactory.createAccessControlList(writerReadACEs);	
-		
-		adminACEs = new ArrayList<Ace>(1);
-		adminACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		adminAcl = fFactory.createAccessControlList(adminACEs);	
-		
-		List<Ace> defaultACEs = new ArrayList<Ace>(1);
+        List<String> principalIds = new ArrayList<String>(3);
+        principalIds.add("TestAdmin");
+        principalIds.add("Writer");
+        principalIds.add("Reader");
+        principalIds.add("TestUser");
+        addACEs = new ArrayList<Ace>(4);
+        addACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        addACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
+        addACEs.add(createAce("TestUser", EnumBasicPermissions.CMIS_WRITE));
+        addACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        addAcl = fFactory.createAccessControlList(addACEs);
+
+        standardACEs = new ArrayList<Ace>(3);
+        standardACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        standardACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
+        standardACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        standardAcl = fFactory.createAccessControlList(standardACEs);
+
+        noReadACEs = new ArrayList<Ace>(2);
+        noReadACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        noReadACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
+        noReadAcl = fFactory.createAccessControlList(noReadACEs);
+
+        readACEs = new ArrayList<Ace>(1);
+        readACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        readAcl = fFactory.createAccessControlList(readACEs);
+
+        readWriteACEs = new ArrayList<Ace>(2);
+        readWriteACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        readWriteACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
+        readWriteAcl = fFactory.createAccessControlList(readWriteACEs);
+
+        testUserACEs = new ArrayList<Ace>(1);
+        testUserACEs.add(createAce("TestUser", EnumBasicPermissions.CMIS_WRITE));
+        testUserAcl = fFactory.createAccessControlList(testUserACEs);
+
+        writerReadACEs = new ArrayList<Ace>(1);
+        writerReadACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_READ));
+        writerReadAcl = fFactory.createAccessControlList(writerReadACEs);
+
+        adminACEs = new ArrayList<Ace>(1);
+        adminACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        adminAcl = fFactory.createAccessControlList(adminACEs);
+
+        List<Ace> defaultACEs = new ArrayList<Ace>(1);
         defaultACEs.add(createAce(InMemoryAce.getAnyoneUser(), EnumBasicPermissions.CMIS_ALL));
-        defaultAcl = fFactory.createAccessControlList(defaultACEs); 
-	}
+        defaultAcl = fFactory.createAccessControlList(defaultACEs);
+    }
+
+    @Test
+    public void testCreateObjectsWithAcl() {
+        // create a document with initial ACL
+        String docId = createDocumentWithAcls("complexDocument", fRootFolderId, UnitTestTypeSystemCreator.COMPLEX_TYPE,
+                addAcl, defaultAcl);
+        Acl acl1 = fAclSvc.getAcl(fRepositoryId, docId, true, null);
+        assertTrue(aclEquals(addAcl, acl1));
+
+        // create a folder with initial ACL
+        String folderId = createFolderWithAcls("folderWithAcl", fRootFolderId, BaseTypeId.CMIS_FOLDER.value(), addAcl,
+                defaultAcl);
+        Acl acl2 = fAclSvc.getAcl(fRepositoryId, folderId, true, null);
+        assertTrue(aclEquals(addAcl, acl2));
 
-	@Test
-	public void testCreateObjectsWithAcl()
-	{
-		// create a document with initial ACL
-		String docId = createDocumentWithAcls("complexDocument",  fRootFolderId, UnitTestTypeSystemCreator.COMPLEX_TYPE,
-				addAcl, defaultAcl);
-		Acl acl1 = fAclSvc.getAcl(fRepositoryId, docId, true, null);
-		assertTrue(aclEquals(addAcl, acl1));
-		
-		// create a folder with initial ACL
-		String folderId = createFolderWithAcls("folderWithAcl", fRootFolderId, BaseTypeId.CMIS_FOLDER.value(),
-				addAcl, defaultAcl);
-		Acl acl2 = fAclSvc.getAcl(fRepositoryId, folderId, true, null);
-		assertTrue(aclEquals(addAcl, acl2));
-		
-		// add acl later
-		String docId2 = createVersionedDocument("complexDocument2",  fRootFolderId);
+        // add acl later
+        String docId2 = createVersionedDocument("complexDocument2", fRootFolderId);
         Acl acl = fAclSvc.applyAcl(fRepositoryId, docId2, addAcl, defaultAcl, AclPropagation.OBJECTONLY, null);
-		assertTrue(aclEquals(addAcl, acl));
-		
-		String folderId2 = createFolder("folder2", fRootFolderId, "cmis:folder");
-		acl2 = fAclSvc.applyAcl(fRepositoryId, folderId2, addAcl, defaultAcl, AclPropagation.OBJECTONLY, null);
-		assertTrue(aclEquals(addAcl, acl2));
-		
-		// add a subfolder
-		String subFolderId = createFolder("subFolder", folderId,  BaseTypeId.CMIS_FOLDER.value());
-		// folder should inherit acl
-		Acl subAcl = fAclSvc.getAcl(fRepositoryId, subFolderId, true, null);
-		assertTrue(aclEquals(addAcl, subAcl));
-		
-		// add a document
-		String subDocId = createVersionedDocument("subDoc", subFolderId);
-		// document should inherit acl
-		Acl subAclDoc = fAclSvc.getAcl(fRepositoryId, subDocId, true, null);
-		assertTrue(aclEquals(addAcl, subAclDoc));
-		
-		// remove an ace, no permission is left for TestUser
-		Acl removeAcl = createAcl("TestUser", EnumBasicPermissions.CMIS_WRITE);
-		Acl acl3 = fAclSvc.applyAcl(fRepositoryId, docId2, null, removeAcl, AclPropagation.OBJECTONLY, null);
-		
-		List<Ace> compareRemoveACEs = new ArrayList<Ace>(3);
-		compareRemoveACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		compareRemoveACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
-		compareRemoveACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		Acl compareRemoveAcl = fFactory.createAccessControlList(compareRemoveACEs);
-		
-		assertTrue(aclEquals(compareRemoveAcl, acl3));
-		
-		// addACE not propagated
-		Acl addPropAcl = createAcl("TestUser", EnumBasicPermissions.CMIS_WRITE);
-		
-		Acl acl4 = fAclSvc.applyAcl(fRepositoryId, subFolderId, addPropAcl, null, AclPropagation.OBJECTONLY, null);
-		Acl subAclDoc2 = fAclSvc.getAcl(fRepositoryId, subDocId, true, null);
-		assertTrue(aclEquals(addAcl, subAclDoc2));  // acl of doc did not change
-		
-		List<Ace> compareRemoveACEs2 = new ArrayList<Ace>(4);
-		compareRemoveACEs2.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		compareRemoveACEs2.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
-		compareRemoveACEs2.add(createAce("TestUser", EnumBasicPermissions.CMIS_ALL));
-		compareRemoveACEs2.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		Acl compareRemoveAcl2 = fFactory.createAccessControlList(compareRemoveACEs2);
-		assertTrue(aclEquals(compareRemoveAcl2, acl4)); 
-		
-		// addACE propagated
-		Acl acl5 = fAclSvc.applyAcl(fRepositoryId, subFolderId, addPropAcl, null, AclPropagation.PROPAGATE, null);
-		Acl subAclDoc3 = fAclSvc.getAcl(fRepositoryId, subDocId, true, null);
-		assertTrue(aclEquals(compareRemoveAcl2, subAclDoc3));  // acl of doc did change
-		assertTrue(aclEquals(compareRemoveAcl2, acl5)); 
-	}
-		
-	
-	@Test
-	public void checkNavigationServiceGeneralAccess()
-	{
-		// starts with call context TestUser
-		switchCallContext("TestAdmin");
-		String docId = createDocumentWithAcls("doc",  fRootFolderId, "ComplexType",
-				standardAcl, defaultAcl);
-		String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
-//		fTestCallContext = new DummyCallContext("Writer");
-		String subFolderId = createFolderWithAcls("subFolder", folderId, "cmis:folder", standardAcl, null);
-		
-		
-		// TestUser has no permission at all
-		switchCallContext("TestUser");
-		boolean exceptionThrown = false;
-		try
-		{
-			ObjectInFolderList list = fNavSvc.getChildren(fRepositoryId, folderId, null, null, false, IncludeRelationships.NONE, null, null, 
-					BigInteger.ZERO , BigInteger.ZERO, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        assertTrue(aclEquals(addAcl, acl));
+
+        String folderId2 = createFolder("folder2", fRootFolderId, "cmis:folder");
+        acl2 = fAclSvc.applyAcl(fRepositoryId, folderId2, addAcl, defaultAcl, AclPropagation.OBJECTONLY, null);
+        assertTrue(aclEquals(addAcl, acl2));
+
+        // add a subfolder
+        String subFolderId = createFolder("subFolder", folderId, BaseTypeId.CMIS_FOLDER.value());
+        // folder should inherit acl
+        Acl subAcl = fAclSvc.getAcl(fRepositoryId, subFolderId, true, null);
+        assertTrue(aclEquals(addAcl, subAcl));
+
+        // add a document
+        String subDocId = createVersionedDocument("subDoc", subFolderId);
+        // document should inherit acl
+        Acl subAclDoc = fAclSvc.getAcl(fRepositoryId, subDocId, true, null);
+        assertTrue(aclEquals(addAcl, subAclDoc));
+
+        // remove an ace, no permission is left for TestUser
+        Acl removeAcl = createAcl("TestUser", EnumBasicPermissions.CMIS_WRITE);
+        Acl acl3 = fAclSvc.applyAcl(fRepositoryId, docId2, null, removeAcl, AclPropagation.OBJECTONLY, null);
+
+        List<Ace> compareRemoveACEs = new ArrayList<Ace>(3);
+        compareRemoveACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        compareRemoveACEs.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
+        compareRemoveACEs.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        Acl compareRemoveAcl = fFactory.createAccessControlList(compareRemoveACEs);
+
+        assertTrue(aclEquals(compareRemoveAcl, acl3));
+
+        // addACE not propagated
+        Acl addPropAcl = createAcl("TestUser", EnumBasicPermissions.CMIS_WRITE);
+
+        Acl acl4 = fAclSvc.applyAcl(fRepositoryId, subFolderId, addPropAcl, null, AclPropagation.OBJECTONLY, null);
+        Acl subAclDoc2 = fAclSvc.getAcl(fRepositoryId, subDocId, true, null);
+        assertTrue(aclEquals(addAcl, subAclDoc2)); // acl of doc did not change
+
+        List<Ace> compareRemoveACEs2 = new ArrayList<Ace>(4);
+        compareRemoveACEs2.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        compareRemoveACEs2.add(createAce("Writer", EnumBasicPermissions.CMIS_WRITE));
+        compareRemoveACEs2.add(createAce("TestUser", EnumBasicPermissions.CMIS_ALL));
+        compareRemoveACEs2.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        Acl compareRemoveAcl2 = fFactory.createAccessControlList(compareRemoveACEs2);
+        assertTrue(aclEquals(compareRemoveAcl2, acl4));
+
+        // addACE propagated
+        Acl acl5 = fAclSvc.applyAcl(fRepositoryId, subFolderId, addPropAcl, null, AclPropagation.PROPAGATE, null);
+        Acl subAclDoc3 = fAclSvc.getAcl(fRepositoryId, subDocId, true, null);
+        assertTrue(aclEquals(compareRemoveAcl2, subAclDoc3)); // acl of doc did
+                                                              // change
+        assertTrue(aclEquals(compareRemoveAcl2, acl5));
+    }
+
+    @Test
+    public void checkNavigationServiceGeneralAccess() {
+        // starts with call context TestUser
+        switchCallContext("TestAdmin");
+        String docId = createDocumentWithAcls("doc", fRootFolderId, "ComplexType", standardAcl, defaultAcl);
+        String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
+        // fTestCallContext = new DummyCallContext("Writer");
+        String subFolderId = createFolderWithAcls("subFolder", folderId, "cmis:folder", standardAcl, null);
+
+        // TestUser has no permission at all
+        switchCallContext("TestUser");
+        boolean exceptionThrown = false;
+        try {
+            ObjectInFolderList list = fNavSvc.getChildren(fRepositoryId, folderId, null, null, false,
+                    IncludeRelationships.NONE, null, null, BigInteger.ZERO, BigInteger.ZERO, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-		switchCallContext("Reader");
-		ObjectInFolderList list = fNavSvc.getChildren(fRepositoryId, folderId, null, null, false, IncludeRelationships.NONE, null, null,
-				BigInteger.ZERO , BigInteger.ZERO, null);
-		
-		
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			List<ObjectInFolderContainer> list2 = fNavSvc.getDescendants(fRepositoryId, folderId, MINUS_ONE, null, null, null, null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        ObjectInFolderList list = fNavSvc.getChildren(fRepositoryId, folderId, null, null, false,
+                IncludeRelationships.NONE, null, null, BigInteger.ZERO, BigInteger.ZERO, null);
+
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            List<ObjectInFolderContainer> list2 = fNavSvc.getDescendants(fRepositoryId, folderId, MINUS_ONE, null,
+                    null, null, null, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-		switchCallContext("Reader");
-		List<ObjectInFolderContainer> list2 = fNavSvc.getDescendants(fRepositoryId, folderId, MINUS_ONE, null, null, null, null, null, null);
-		
-		
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			List<ObjectInFolderContainer> list3 = fNavSvc.getFolderTree(fRepositoryId, folderId, BigInteger.ONE, null, null, null, null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        List<ObjectInFolderContainer> list2 = fNavSvc.getDescendants(fRepositoryId, folderId, MINUS_ONE, null, null,
+                null, null, null, null);
+
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            List<ObjectInFolderContainer> list3 = fNavSvc.getFolderTree(fRepositoryId, folderId, BigInteger.ONE, null,
+                    null, null, null, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-		switchCallContext("Reader");
-		List<ObjectInFolderContainer> list3 = fNavSvc.getFolderTree(fRepositoryId, folderId, BigInteger.ONE, null, null, null, null, null, null);
-		
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			List<ObjectParentData> list4 = fNavSvc.getObjectParents(fRepositoryId, folderId, null, null, null, null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        List<ObjectInFolderContainer> list3 = fNavSvc.getFolderTree(fRepositoryId, folderId, BigInteger.ONE, null,
+                null, null, null, null, null);
+
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            List<ObjectParentData> list4 = fNavSvc.getObjectParents(fRepositoryId, folderId, null, null, null, null,
+                    null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-		switchCallContext("Reader");
-		List<ObjectParentData> list4 = fNavSvc.getObjectParents(fRepositoryId, folderId, null, null, null, null, null, null);
-		
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			ObjectData list5 = fNavSvc.getFolderParent(fRepositoryId, folderId, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        List<ObjectParentData> list4 = fNavSvc.getObjectParents(fRepositoryId, folderId, null, null, null, null, null,
+                null);
+
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            ObjectData list5 = fNavSvc.getFolderParent(fRepositoryId, folderId, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-		switchCallContext("Reader");
-		ObjectData list5 = fNavSvc.getFolderParent(fRepositoryId, folderId, null, null);
-	
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			ObjectList list6 = fNavSvc.getCheckedOutDocs(fRepositoryId, folderId, null, null, null, IncludeRelationships.NONE, 
-					null, MINUS_ONE, MINUS_ONE, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        ObjectData list5 = fNavSvc.getFolderParent(fRepositoryId, folderId, null, null);
+
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            ObjectList list6 = fNavSvc.getCheckedOutDocs(fRepositoryId, folderId, null, null, null,
+                    IncludeRelationships.NONE, null, MINUS_ONE, MINUS_ONE, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-		switchCallContext("Reader");
-		ObjectList list6 = fNavSvc.getCheckedOutDocs(fRepositoryId, folderId, null, null, null, IncludeRelationships.NONE, 
-				null, MINUS_ONE, MINUS_ONE, null);
-	}
-	
-	@Test
-	public void testAclServiceGeneralAccess()
-	{
-	    List<Ace> initialACEs = new ArrayList<Ace>(4);
-	    initialACEs.addAll(standardACEs);
-	    initialACEs.add(createAce("Admin2", EnumBasicPermissions.CMIS_ALL));
-        Acl initialAcl = fFactory.createAccessControlList(initialACEs);   
-        
+
+        switchCallContext("Reader");
+        ObjectList list6 = fNavSvc.getCheckedOutDocs(fRepositoryId, folderId, null, null, null,
+                IncludeRelationships.NONE, null, MINUS_ONE, MINUS_ONE, null);
+    }
+
+    @Test
+    public void testAclServiceGeneralAccess() {
+        List<Ace> initialACEs = new ArrayList<Ace>(4);
+        initialACEs.addAll(standardACEs);
+        initialACEs.add(createAce("Admin2", EnumBasicPermissions.CMIS_ALL));
+        Acl initialAcl = fFactory.createAccessControlList(initialACEs);
+
         List<Ace> expectedACEs = new ArrayList<Ace>(5);
         expectedACEs.addAll(initialACEs);
         expectedACEs.addAll(testUserACEs);
-        Acl expectedAcl = fFactory.createAccessControlList(expectedACEs);   
-        
-	    List<Ace> removeACEs = new ArrayList<Ace>(1);
+        Acl expectedAcl = fFactory.createAccessControlList(expectedACEs);
+
+        List<Ace> removeACEs = new ArrayList<Ace>(1);
         removeACEs.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		Acl removeAcl = fFactory.createAccessControlList(removeACEs);
-		
-		List<Ace> removeACEs2 = new ArrayList<Ace>(2);
-		removeACEs2.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
-		removeACEs2.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
-		Acl removeAcl2 = fFactory.createAccessControlList(removeACEs2);
-		
-		List<Ace> testUserACEs = new ArrayList<Ace>(1);
-		testUserACEs.add(createAce("TestUser", EnumBasicPermissions.CMIS_WRITE));
-		Acl testUserAcl = fFactory.createAccessControlList(testUserACEs);
-		
-		switchCallContext("TestAdmin");
-		String docId = createDocumentWithAcls("doc",  fRootFolderId, "ComplexType",
-		        initialAcl, defaultAcl);
-		String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", initialAcl, defaultAcl);
-		String subFolderId = createFolderWithAcls("subFolder", folderId, "cmis:folder", initialAcl, defaultAcl);
-		
-		// getAcl of a folder
-		switchCallContext("TestUser");
-		boolean exceptionThrown = false;
-		try
-		{
-			Acl acl = fAclSvc.getAcl(fRepositoryId, folderId, null, null); 
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        Acl removeAcl = fFactory.createAccessControlList(removeACEs);
+
+        List<Ace> removeACEs2 = new ArrayList<Ace>(2);
+        removeACEs2.add(createAce("TestAdmin", EnumBasicPermissions.CMIS_ALL));
+        removeACEs2.add(createAce("Reader", EnumBasicPermissions.CMIS_READ));
+        Acl removeAcl2 = fFactory.createAccessControlList(removeACEs2);
+
+        List<Ace> testUserACEs = new ArrayList<Ace>(1);
+        testUserACEs.add(createAce("TestUser", EnumBasicPermissions.CMIS_WRITE));
+        Acl testUserAcl = fFactory.createAccessControlList(testUserACEs);
+
+        switchCallContext("TestAdmin");
+        String docId = createDocumentWithAcls("doc", fRootFolderId, "ComplexType", initialAcl, defaultAcl);
+        String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", initialAcl, defaultAcl);
+        String subFolderId = createFolderWithAcls("subFolder", folderId, "cmis:folder", initialAcl, defaultAcl);
+
+        // getAcl of a folder
+        switchCallContext("TestUser");
+        boolean exceptionThrown = false;
+        try {
+            Acl acl = fAclSvc.getAcl(fRepositoryId, folderId, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to get acl of folder");
         }
-		
-		switchCallContext("Reader");
-		Acl acl = fAclSvc.getAcl(fRepositoryId, folderId, null, null);
-		
-		// getAcl of a document
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			Acl docAcl = fAclSvc.getAcl(fRepositoryId, docId, true, null); 
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        Acl acl = fAclSvc.getAcl(fRepositoryId, folderId, null, null);
+
+        // getAcl of a document
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            Acl docAcl = fAclSvc.getAcl(fRepositoryId, docId, true, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to get acl of doc)");
         }
-		
-		switchCallContext("Reader");
-		Acl docAcl = fAclSvc.getAcl(fRepositoryId, docId, true, null);
-		
-		// applyAcl
-		switchCallContext("Reader");
-		exceptionThrown = false;
-		try
-		{
-			Acl docAcl2 = fAclSvc.applyAcl(fRepositoryId, docId, initialAcl, null, AclPropagation.OBJECTONLY, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        Acl docAcl = fAclSvc.getAcl(fRepositoryId, docId, true, null);
+
+        // applyAcl
+        switchCallContext("Reader");
+        exceptionThrown = false;
+        try {
+            Acl docAcl2 = fAclSvc.applyAcl(fRepositoryId, docId, initialAcl, null, AclPropagation.OBJECTONLY, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions)");
         }
-		
-//		switchCallContext("Writer");
+
+        // switchCallContext("Writer");
+        switchCallContext("TestAdmin");
+        Acl docAcl2 = fAclSvc.applyAcl(fRepositoryId, docId, initialAcl, null, AclPropagation.OBJECTONLY, null);
+
+        // applyAcl when not allowed to subItem
+        switchCallContext("TestAdmin");
+        Acl docAcl4 = fAclSvc.applyAcl(fRepositoryId, subFolderId, null, removeAcl, AclPropagation.OBJECTONLY, null);
+
+        // switchCallContext("Writer");
         switchCallContext("TestAdmin");
-		Acl docAcl2 = fAclSvc.applyAcl(fRepositoryId, docId, initialAcl, null, AclPropagation.OBJECTONLY, null);
-		
-		// applyAcl when not allowed to subItem
-		switchCallContext("TestAdmin");
-		Acl docAcl4 = fAclSvc.applyAcl(fRepositoryId, subFolderId, null, removeAcl, AclPropagation.OBJECTONLY, null);
-		
-//        switchCallContext("Writer");
-        switchCallContext("TestAdmin");
-        // apply an ACL where the current user has permission to modify ACL on folder but not on sub-folder:
-		Acl docAcl5 = fAclSvc.applyAcl(fRepositoryId, folderId, testUserAcl, null, AclPropagation.PROPAGATE, null);
-		switchCallContext("Admin");
-		Acl docAcl6 = fAclSvc.getAcl(fRepositoryId, folderId, true, null);
-		assertTrue(aclEquals(expectedAcl, docAcl6)); 
-		Acl docAcl7 = fAclSvc.getAcl(fRepositoryId, subFolderId, true, null);
-		assertTrue(aclEquals(standardAcl, docAcl7)); 
-	}
-	
-	@Test
-	public void testObjectServiceGeneralAccess()
-	{
-			
-		// starts with call context TestUser
-		switchCallContext("TestAdmin");
-		String docId = createDocumentWithAcls("doc",  fRootFolderId, "ComplexType",
-				standardAcl, defaultAcl);
-		String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
-//		fTestCallContext = new DummyCallContext("Writer");
-		String subFolderId = createFolderWithAcls("subFolder", folderId, "cmis:folder", standardAcl, null);
-		String noReadFolderId = createFolderWithAcls("noReadFolder", folderId, "cmis:folder", null, readAcl);
-		String adminFolderId = createFolderWithAcls("adminFolder", folderId, "cmis:folder", null, readWriteAcl);
-		
-		// TestUser has no permission at all
-		switchCallContext("TestUser");
-		boolean exceptionThrown = false;
-		try
-		{
-			Properties properties = createDocumentProperties("doc", "ComplexType");
-			String id = fObjSvc.createDocument(fRepositoryId, properties, folderId, null, null, null, null,
-					null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        // apply an ACL where the current user has permission to modify ACL on
+        // folder but not on sub-folder:
+        Acl docAcl5 = fAclSvc.applyAcl(fRepositoryId, folderId, testUserAcl, null, AclPropagation.PROPAGATE, null);
+        switchCallContext("Admin");
+        Acl docAcl6 = fAclSvc.getAcl(fRepositoryId, folderId, true, null);
+        assertTrue(aclEquals(expectedAcl, docAcl6));
+        Acl docAcl7 = fAclSvc.getAcl(fRepositoryId, subFolderId, true, null);
+        assertTrue(aclEquals(standardAcl, docAcl7));
+    }
+
+    @Test
+    public void testObjectServiceGeneralAccess() {
+
+        // starts with call context TestUser
+        switchCallContext("TestAdmin");
+        String docId = createDocumentWithAcls("doc", fRootFolderId, "ComplexType", standardAcl, defaultAcl);
+        String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
+        // fTestCallContext = new DummyCallContext("Writer");
+        String subFolderId = createFolderWithAcls("subFolder", folderId, "cmis:folder", standardAcl, null);
+        String noReadFolderId = createFolderWithAcls("noReadFolder", folderId, "cmis:folder", null, readAcl);
+        String adminFolderId = createFolderWithAcls("adminFolder", folderId, "cmis:folder", null, readWriteAcl);
+
+        // TestUser has no permission at all
+        switchCallContext("TestUser");
+        boolean exceptionThrown = false;
+        try {
+            Properties properties = createDocumentProperties("doc", "ComplexType");
+            String id = fObjSvc.createDocument(fRepositoryId, properties, folderId, null, null, null, null, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to create a document");
         }
-		
-		exceptionThrown = false;
-		try
-		{
-			String id = fObjSvc.createFolder(fRepositoryId, null, folderId, null, null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            String id = fObjSvc.createFolder(fRepositoryId, null, folderId, null, null, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to create a folder");
         }
-		
-		/*
-		exceptionThrown = false;
-		try
-		{
-			Properties properties = createRelationshipProperties(folderId, fRootFolderId);
-			String id1 = fObjSvc.createRelationship(fRepositoryId, properties, null, null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown)
-			fail("TestUser has no permissions to create a relationship: missing read permission for source id");
-		
-		exceptionThrown = false;
-		Properties properties = createRelationshipProperties( fRootFolderId, folderId);
-		try
-		{
-			String id2 = fObjSvc.createRelationship(fRepositoryId, properties, null, null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown)
-			fail("TestUser has no permissions to create a relationship: missing read permission for destination");
-		*/
-		
-		exceptionThrown = false;
-		try
-		{
-			Properties props = fObjSvc.getProperties(fRepositoryId,  folderId, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        /*
+         * exceptionThrown = false; try { Properties properties =
+         * createRelationshipProperties(folderId, fRootFolderId); String id1 =
+         * fObjSvc.createRelationship(fRepositoryId, properties, null, null,
+         * null, null); } catch (CmisPermissionDeniedException e) {
+         * exceptionThrown = true; } if (!exceptionThrown) fail(
+         * "TestUser has no permissions to create a relationship: missing read permission for source id"
+         * );
+         * 
+         * exceptionThrown = false; Properties properties =
+         * createRelationshipProperties( fRootFolderId, folderId); try { String
+         * id2 = fObjSvc.createRelationship(fRepositoryId, properties, null,
+         * null, null, null); } catch (CmisPermissionDeniedException e) {
+         * exceptionThrown = true; } if (!exceptionThrown) fail(
+         * "TestUser has no permissions to create a relationship: missing read permission for destination"
+         * );
+         */
+
+        exceptionThrown = false;
+        try {
+            Properties props = fObjSvc.getProperties(fRepositoryId, folderId, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to get properties of the folder");
         }
-		
-		exceptionThrown = false;
-		try
-		{
-			Properties props = fObjSvc.getProperties(fRepositoryId,  docId, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            Properties props = fObjSvc.getProperties(fRepositoryId, docId, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to get properties of the document");
         }
-		
-		exceptionThrown = false;
-		try
-		{
-			List<RenditionData> renditions = fObjSvc.getRenditions(fRepositoryId,  docId, null, BigInteger.valueOf(-1),
-					BigInteger.valueOf(-1), null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            List<RenditionData> renditions = fObjSvc.getRenditions(fRepositoryId, docId, null, BigInteger.valueOf(-1),
+                    BigInteger.valueOf(-1), null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to get renditions of the document");
         }
-		
-		exceptionThrown = false;
-		try
-		{
-			ContentStream contentStream =  fObjSvc.getContentStream(fRepositoryId,  docId, null, BigInteger.valueOf(-1),
-					BigInteger.valueOf(-1), null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            ContentStream contentStream = fObjSvc.getContentStream(fRepositoryId, docId, null, BigInteger.valueOf(-1),
+                    BigInteger.valueOf(-1), null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions to get contentStream of the document");
         }
-		
-		switchCallContext("Reader");
-		exceptionThrown = false;
-		Properties properties = createDocumentProperties( "name", "typeId");
-		try
-		{	
-			fObjSvc.updateProperties(fRepositoryId,
-					new Holder<String>(docId), new Holder<String>("changeToken"), properties, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        exceptionThrown = false;
+        Properties properties = createDocumentProperties("name", "typeId");
+        try {
+            fObjSvc.updateProperties(fRepositoryId, new Holder<String>(docId), new Holder<String>("changeToken"),
+                    properties, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to update properties of the document");
         }
-		
-		exceptionThrown = false;
-		properties = createDocumentProperties( "name", "typeId");
-		try
-		{	
-			fObjSvc.updateProperties(fRepositoryId,
-					new Holder<String>(docId), new Holder<String>("changeToken"), properties, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        properties = createDocumentProperties("name", "typeId");
+        try {
+            fObjSvc.updateProperties(fRepositoryId, new Holder<String>(docId), new Holder<String>("changeToken"),
+                    properties, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to update properties of the document");
         }
-		
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.moveObject(fRepositoryId, new Holder<String>(docId), subFolderId,
-					fRootFolderId, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            fObjSvc.moveObject(fRepositoryId, new Holder<String>(docId), subFolderId, fRootFolderId, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to move document");
         }
-		
-		switchCallContext("Writer");
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.moveObject(fRepositoryId,new Holder<String>(docId), adminFolderId,
-					fRootFolderId, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Writer");
+        exceptionThrown = false;
+        try {
+            fObjSvc.moveObject(fRepositoryId, new Holder<String>(docId), adminFolderId, fRootFolderId, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Writer has no permissions to move document to admin folder");
         }
-		
-		switchCallContext("Reader");
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.deleteObject(fRepositoryId, docId, true, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("Reader");
+        exceptionThrown = false;
+        try {
+            fObjSvc.deleteObject(fRepositoryId, docId, true, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to delete document ");
         }
-		
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.deleteObject(fRepositoryId, adminFolderId, true, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            fObjSvc.deleteObject(fRepositoryId, adminFolderId, true, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to delete admin folder ");
         }
-		
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.setContentStream(fRepositoryId, new Holder<String> (docId), true,
-					new Holder<String>("changeToken"), null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            fObjSvc.setContentStream(fRepositoryId, new Holder<String>(docId), true, new Holder<String>("changeToken"),
+                    null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to set content ");
         }
-		
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.deleteContentStream(fRepositoryId, new Holder<String> (docId), 
-					new Holder<String>("changeToken"), null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            fObjSvc.deleteContentStream(fRepositoryId, new Holder<String>(docId), new Holder<String>("changeToken"),
+                    null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to delete content ");
         }
-		
-		exceptionThrown = false;
-		try
-		{	
-			fObjSvc.deleteTree(fRepositoryId, folderId, true,
-					 null, false, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            fObjSvc.deleteTree(fRepositoryId, folderId, true, null, false, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permissions to delete tree ");
         }
-	}
-	
-	@Test
-	public void testMultiFilingServiceGeneralAccess()
-	{
-		// starts with call context TestUser
-		switchCallContext("TestAdmin");
-		String docId = createDocumentWithAcls("doc",  fRootFolderId, "ComplexType",
-				standardAcl, defaultAcl);
-		String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", 
-				addAcl, defaultAcl);
-		String noReadFolderId = createFolderWithAcls("noReadFolder", folderId, "cmis:folder", 
-				null, readAcl);
-		
-		// TestUser has no permission at the document
-		switchCallContext("TestUser");
-		boolean exceptionThrown = false;
-		try
-		{
-			
-			fMultiSvc.addObjectToFolder(fRepositoryId, docId, folderId, true, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+    }
+
+    @Test
+    public void testMultiFilingServiceGeneralAccess() {
+        // starts with call context TestUser
+        switchCallContext("TestAdmin");
+        String docId = createDocumentWithAcls("doc", fRootFolderId, "ComplexType", standardAcl, defaultAcl);
+        String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", addAcl, defaultAcl);
+        String noReadFolderId = createFolderWithAcls("noReadFolder", folderId, "cmis:folder", null, readAcl);
+
+        // TestUser has no permission at the document
+        switchCallContext("TestUser");
+        boolean exceptionThrown = false;
+        try {
+
+            fMultiSvc.addObjectToFolder(fRepositoryId, docId, folderId, true, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permissions at the document to add a parent");
         }
-		
-		exceptionThrown = false;
-		switchCallContext("Reader");  // has no permission at the folder
-		try
-		{
-			
-			fMultiSvc.addObjectToFolder(fRepositoryId, docId, noReadFolderId, true, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        switchCallContext("Reader"); // has no permission at the folder
+        try {
+
+            fMultiSvc.addObjectToFolder(fRepositoryId, docId, noReadFolderId, true, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permission at the folder to add a parent");
         }
-		
-		switchCallContext("TestAdmin");
-		fMultiSvc.addObjectToFolder(fRepositoryId, docId, noReadFolderId, true, null);
-		fMultiSvc.addObjectToFolder(fRepositoryId, docId, folderId, true, null);
-		
-		switchCallContext("Reader");  
-		try
-		{
-			
-			fMultiSvc.removeObjectFromFolder(fRepositoryId, docId, noReadFolderId, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("TestAdmin");
+        fMultiSvc.addObjectToFolder(fRepositoryId, docId, noReadFolderId, true, null);
+        fMultiSvc.addObjectToFolder(fRepositoryId, docId, folderId, true, null);
+
+        switchCallContext("Reader");
+        try {
+
+            fMultiSvc.removeObjectFromFolder(fRepositoryId, docId, noReadFolderId, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has no permission at the folder to remove a parent");
         }
-		
-		switchCallContext("TestUser"); 
-		try
-		{
-			
-			fMultiSvc.removeObjectFromFolder(fRepositoryId, docId, folderId, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        switchCallContext("TestUser");
+        try {
+
+            fMultiSvc.removeObjectFromFolder(fRepositoryId, docId, folderId, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permission at the object to remove a parent");
         }
-	}
-	
-	@Test
-	public void testVersioningServiceGeneralAccess()
-	{
-		// starts with call context TestUser
-		switchCallContext("TestAdmin");
-		String docId = createDocumentWithAcls("doc",  fRootFolderId, UnitTestTypeSystemCreator.VERSIONED_TYPE,
-		        VersioningState.MAJOR, standardAcl, defaultAcl);
-	
-		// TestUser has no permission at all
-		switchCallContext("TestUser");
-		boolean exceptionThrown = false;
-		try
-		{
-			Holder<String> docIdHolder = new Holder<String>(docId);
-			fVerSvc.checkOut(fRepositoryId, docIdHolder, null, 
-					new Holder<Boolean>(false));
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+    }
+
+    @Test
+    public void testVersioningServiceGeneralAccess() {
+        // starts with call context TestUser
+        switchCallContext("TestAdmin");
+        String docId = createDocumentWithAcls("doc", fRootFolderId, UnitTestTypeSystemCreator.VERSIONED_TYPE,
+                VersioningState.MAJOR, standardAcl, defaultAcl);
+
+        // TestUser has no permission at all
+        switchCallContext("TestUser");
+        boolean exceptionThrown = false;
+        try {
+            Holder<String> docIdHolder = new Holder<String>(docId);
+            fVerSvc.checkOut(fRepositoryId, docIdHolder, null, new Holder<Boolean>(false));
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permission to checkout)");
         }
-		
-		// Reader has only read permission
-		switchCallContext("Reader");
-		exceptionThrown = false;
-		try
-		{
-			fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, 
-					new Holder<Boolean>(false));
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        // Reader has only read permission
+        switchCallContext("Reader");
+        exceptionThrown = false;
+        try {
+            fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, new Holder<Boolean>(false));
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has not enough permission to checkout)");
         }
-		
-		// checkout
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
-		switchCallContext("TestUser");
-		Holder<String> docIdHolder = new Holder<String>(docId);
-		fVerSvc.checkOut(fRepositoryId, docIdHolder, null, 
-				new Holder<Boolean>(false));
-	
-        switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, null, testUserAcl, AclPropagation.OBJECTONLY, null);
-		
-		// TestUser has no permission at all, only checkout user can checkin
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        // checkout
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
+        switchCallContext("TestUser");
+        Holder<String> docIdHolder = new Holder<String>(docId);
+        fVerSvc.checkOut(fRepositoryId, docIdHolder, null, new Holder<Boolean>(false));
+
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, null, testUserAcl, AclPropagation.OBJECTONLY, null);
+
+        // TestUser has no permission at all, only checkout user can checkin
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permission to cancelCheckOut)");
         }
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
-		switchCallContext("TestUser");
-		fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
-		
-		// writer looses write permission
-		switchCallContext("Writer");
-		fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, 
-				new Holder<Boolean>(false));
-
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, null, readWriteAcl, AclPropagation.OBJECTONLY, null);
-	
-		switchCallContext("Writer");
-        exceptionThrown = false;
-		try
-		{
-			fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
+        switchCallContext("TestUser");
+        fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
+
+        // writer looses write permission
+        switchCallContext("Writer");
+        fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, new Holder<Boolean>(false));
+
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, null, readWriteAcl, AclPropagation.OBJECTONLY, null);
+
+        switchCallContext("Writer");
+        exceptionThrown = false;
+        try {
+            fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Reader has not enough permission to cancelCheckOut)");
         }
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, readWriteAcl, null, AclPropagation.OBJECTONLY, null);
-		switchCallContext("Writer");
-		fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
-				
-		// TestUser has no permission at all
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
-		switchCallContext("TestUser");
-		fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, 
-				new Holder<Boolean>(false));
-
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, null, testUserAcl, AclPropagation.OBJECTONLY, null);
-	
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true,  null, null, null, null,
-					null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, readWriteAcl, null, AclPropagation.OBJECTONLY, null);
+        switchCallContext("Writer");
+        fVerSvc.cancelCheckOut(fRepositoryId, docId, null);
+
+        // TestUser has no permission at all
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
+        switchCallContext("TestUser");
+        fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, new Holder<Boolean>(false));
+
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, null, testUserAcl, AclPropagation.OBJECTONLY, null);
+
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true, null, null, null, null, null, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has no permission to checkIn)");
         }
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
-		switchCallContext("TestUser");
-		fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true,  null, null, null, null,
-				null, null, null);
-
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, null, testUserAcl, AclPropagation.OBJECTONLY, null);
-		
-		// writer looses write permission
-		switchCallContext("Writer");
-		fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, 
-				new Holder<Boolean>(false));
-        
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, null, readWriteAcl, AclPropagation.OBJECTONLY, null);
-
-		switchCallContext("Writer");	
-		exceptionThrown = false;
-		try
-		{
-			fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true,  null, null, null, null,
-					null, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, testUserAcl, null, AclPropagation.OBJECTONLY, null);
+        switchCallContext("TestUser");
+        fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true, null, null, null, null, null, null, null);
+
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, null, testUserAcl, AclPropagation.OBJECTONLY, null);
+
+        // writer looses write permission
+        switchCallContext("Writer");
+        fVerSvc.checkOut(fRepositoryId, new Holder<String>(docId), null, new Holder<Boolean>(false));
+
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, null, readWriteAcl, AclPropagation.OBJECTONLY, null);
+
+        switchCallContext("Writer");
+        exceptionThrown = false;
+        try {
+            fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true, null, null, null, null, null, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("Writer has not enough permission to checkIn)");
         }
-		switchCallContext("TestAdmin");
-		fAclSvc.applyAcl(fRepositoryId, docId, readWriteAcl, null, AclPropagation.OBJECTONLY, null);
-		switchCallContext("Writer");
-		fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true,  null, null, null, null,
-				null, null, null);
-		
-		// TestUser has no permission at all
-		switchCallContext("TestUser");
-		exceptionThrown = false;
-		try
-		{
-			ObjectData objectData = fVerSvc.getObjectOfLatestVersion(fRepositoryId, docId, null, true,
-	            null, false, IncludeRelationships.NONE,
-	            null, false, false, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        switchCallContext("TestAdmin");
+        fAclSvc.applyAcl(fRepositoryId, docId, readWriteAcl, null, AclPropagation.OBJECTONLY, null);
+        switchCallContext("Writer");
+        fVerSvc.checkIn(fRepositoryId, new Holder<String>(docId), true, null, null, null, null, null, null, null);
+
+        // TestUser has no permission at all
+        switchCallContext("TestUser");
+        exceptionThrown = false;
+        try {
+            ObjectData objectData = fVerSvc.getObjectOfLatestVersion(fRepositoryId, docId, null, true, null, false,
+                    IncludeRelationships.NONE, null, false, false, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has not enough permission to getObjectOfLatestVersion)");
         }
-		
-		exceptionThrown = false;
-		try
-		{
-			 List<ObjectData> objectDataList = fVerSvc.getAllVersions(fRepositoryId, docId, docId, null,
-	            false, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+
+        exceptionThrown = false;
+        try {
+            List<ObjectData> objectDataList = fVerSvc.getAllVersions(fRepositoryId, docId, docId, null, false, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has not enough permission to getAllVersions)");
         }
 
-
-		exceptionThrown = false;
-		try
-		{
-			Properties properties = fVerSvc.getPropertiesOfLatestVersion(fRepositoryId, docId, null, 
-					false, null, null);
-		}
-		catch (CmisPermissionDeniedException e)
-		{
-			exceptionThrown = true;
-		}
-		if (!exceptionThrown) {
+        exceptionThrown = false;
+        try {
+            Properties properties = fVerSvc.getPropertiesOfLatestVersion(fRepositoryId, docId, null, false, null, null);
+        } catch (CmisPermissionDeniedException e) {
+            exceptionThrown = true;
+        }
+        if (!exceptionThrown) {
             fail("TestUser has not enough permission to getAllVersions)");
         }
-	}
-	
-		
-	@Test
-	public void testVisibleObjects()
-	{
+    }
+
+    @Test
+    public void testVisibleObjects() {
         LOG.debug("start test checkVisibleObjects()...");
-		switchCallContext("TestAdmin");
-		String docId = createDocumentWithAcls("doc",  fRootFolderId, UnitTestTypeSystemCreator.VERSIONED_TYPE,
-				VersioningState.MAJOR, standardAcl, defaultAcl);
-		String docId2 = createDocumentWithAcls("doc2",  fRootFolderId, UnitTestTypeSystemCreator.VERSIONED_TYPE,
-		        VersioningState.MAJOR, addAcl, defaultAcl);
-		String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", 
-				standardAcl, defaultAcl);
-		String folderId2 = createFolderWithAcls("folder2", fRootFolderId, "cmis:folder", 
-				addAcl, defaultAcl);
-		LOG.debug("checkVisibleObjects(): folderId2 is: " + folderId2);
-		String subFolderId = createFolderWithAcls("subFolder", folderId2, "cmis:folder", 
-				null, testUserAcl);
+        switchCallContext("TestAdmin");
+        String docId = createDocumentWithAcls("doc", fRootFolderId, UnitTestTypeSystemCreator.VERSIONED_TYPE,
+                VersioningState.MAJOR, standardAcl, defaultAcl);
+        String docId2 = createDocumentWithAcls("doc2", fRootFolderId, UnitTestTypeSystemCreator.VERSIONED_TYPE,
+                VersioningState.MAJOR, addAcl, defaultAcl);
+        String folderId = createFolderWithAcls("folder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
+        String folderId2 = createFolderWithAcls("folder2", fRootFolderId, "cmis:folder", addAcl, defaultAcl);
+        LOG.debug("checkVisibleObjects(): folderId2 is: " + folderId2);
+        String subFolderId = createFolderWithAcls("subFolder", folderId2, "cmis:folder", null, testUserAcl);
         LOG.debug("checkVisibleObjects(): subFolderId is: " + subFolderId);
-		String subFolderId2 = createFolderWithAcls("subFolder2", folderId2, "cmis:folder", 
-				addAcl, null);
+        String subFolderId2 = createFolderWithAcls("subFolder2", folderId2, "cmis:folder", addAcl, null);
         LOG.debug("checkVisibleObjects(): subFolderId2 is: " + subFolderId2);
-		String subDocId = createDocumentWithAcls("subDoc",  folderId2, UnitTestTypeSystemCreator.VERSIONED_TYPE,
-		        VersioningState.MAJOR, null, testUserAcl);
+        String subDocId = createDocumentWithAcls("subDoc", folderId2, UnitTestTypeSystemCreator.VERSIONED_TYPE,
+                VersioningState.MAJOR, null, testUserAcl);
         LOG.debug("checkVisibleObjects(): subDocId is: " + subDocId);
-		String subDocId2 = createDocumentWithAcls("subDoc2", folderId2, UnitTestTypeSystemCreator.VERSIONED_TYPE,
-		        VersioningState.MAJOR, addAcl, null);
+        String subDocId2 = createDocumentWithAcls("subDoc2", folderId2, UnitTestTypeSystemCreator.VERSIONED_TYPE,
+                VersioningState.MAJOR, addAcl, null);
         LOG.debug("checkVisibleObjects(): subDocId2 is: " + subDocId2);
-		String noAclDocId2 = createDocumentWithAcls("noAclDoc2", fRootFolderId, "ComplexType",
-				null, null);
+        String noAclDocId2 = createDocumentWithAcls("noAclDoc2", fRootFolderId, "ComplexType", null, null);
         LOG.debug("checkVisibleObjects(): noAclDocId2 is: " + noAclDocId2);
-		
-		// TestUser has no permission in standardAcl
-		switchCallContext("TestUser");
-		
-		ObjectInFolderList list = fNavSvc.getChildren(fRepositoryId, folderId2, null, null, false, IncludeRelationships.NONE, null, null, 
-					null, null, null);
-		List<ObjectInFolderData> objects = list.getObjects();
-		assertObjectDataListIds(objects, subDocId2);
+
+        // TestUser has no permission in standardAcl
+        switchCallContext("TestUser");
+
+        ObjectInFolderList list = fNavSvc.getChildren(fRepositoryId, folderId2, null, null, false,
+                IncludeRelationships.NONE, null, null, null, null, null);
+        List<ObjectInFolderData> objects = list.getObjects();
+        assertObjectDataListIds(objects, subDocId2);
         assertObjectDataListIds(objects, subFolderId2);
-		
-		list = fNavSvc.getChildren(fRepositoryId, fRootFolderId, null, null, false, IncludeRelationships.NONE, null, null, 
-				null, null, null);
-		objects = list.getObjects();
-		assertObjectDataListIds(objects, docId2);
+
+        list = fNavSvc.getChildren(fRepositoryId, fRootFolderId, null, null, false, IncludeRelationships.NONE, null,
+                null, null, null, null);
+        objects = list.getObjects();
+        assertObjectDataListIds(objects, docId2);
         assertObjectDataListIds(objects, folderId2);
         assertObjectDataListIds(objects, noAclDocId2);
-		
-		List<ObjectInFolderContainer> descList = fNavSvc.getDescendants(fRepositoryId, fRootFolderId, MINUS_ONE,
-				null, false, IncludeRelationships.NONE, null, false, null);
-		assertObjectInFolderContainerIds(descList, docId2);
+
+        List<ObjectInFolderContainer> descList = fNavSvc.getDescendants(fRepositoryId, fRootFolderId, MINUS_ONE, null,
+                false, IncludeRelationships.NONE, null, false, null);
+        assertObjectInFolderContainerIds(descList, docId2);
         assertObjectInFolderContainerIds(descList, folderId2);
         assertObjectInFolderContainerIds(descList, noAclDocId2);
-		
-		List<ObjectInFolderContainer> folderList = fNavSvc.getFolderTree(fRepositoryId, fRootFolderId, MINUS_ONE,
-				null, false, IncludeRelationships.NONE, null, false, null);
+
+        List<ObjectInFolderContainer> folderList = fNavSvc.getFolderTree(fRepositoryId, fRootFolderId, MINUS_ONE, null,
+                false, IncludeRelationships.NONE, null, false, null);
         assertObjectInFolderContainerIds(folderList, folderId2);
         assertObjectInFolderContainerIds(folderList, subFolderId2);
-		
-		// check out
-		switchCallContext("TestAdmin");
-		Holder<String> holderDocId = new Holder<String>(docId);
-		Holder<String> holderDocId2 = new Holder<String>(docId2);
-		Holder<String> holderSubDocId = new Holder<String>(subDocId);
-		Holder<String> holderSubDocId2 = new Holder<String>(subDocId2);
-		fVerSvc.checkOut(fRepositoryId, holderDocId, null, null);
-		fVerSvc.checkOut(fRepositoryId, holderDocId2, null, null);
-		fVerSvc.checkOut(fRepositoryId, holderSubDocId, null, null);
-		fVerSvc.checkOut(fRepositoryId, holderSubDocId2, null, null);
-		
-		switchCallContext("TestUser");
-		ObjectList objectList = fNavSvc.getCheckedOutDocs(fRepositoryId, null, null, null, false,
-				IncludeRelationships.NONE, null, MINUS_ONE, MINUS_ONE, null);
-		assertObjectInObjectListIds(objectList, holderDocId2.getValue());
+
+        // check out
+        switchCallContext("TestAdmin");
+        Holder<String> holderDocId = new Holder<String>(docId);
+        Holder<String> holderDocId2 = new Holder<String>(docId2);
+        Holder<String> holderSubDocId = new Holder<String>(subDocId);
+        Holder<String> holderSubDocId2 = new Holder<String>(subDocId2);
+        fVerSvc.checkOut(fRepositoryId, holderDocId, null, null);
+        fVerSvc.checkOut(fRepositoryId, holderDocId2, null, null);
+        fVerSvc.checkOut(fRepositoryId, holderSubDocId, null, null);
+        fVerSvc.checkOut(fRepositoryId, holderSubDocId2, null, null);
+
+        switchCallContext("TestUser");
+        ObjectList objectList = fNavSvc.getCheckedOutDocs(fRepositoryId, null, null, null, false,
+                IncludeRelationships.NONE, null, MINUS_ONE, MINUS_ONE, null);
+        assertObjectInObjectListIds(objectList, holderDocId2.getValue());
         assertObjectInObjectListIds(objectList, holderSubDocId2.getValue());
-		
-		// only direct children are returned
-		ObjectList objectList2 = fNavSvc.getCheckedOutDocs(fRepositoryId, fRootFolderId, null, null, false,
-				IncludeRelationships.NONE, null, MINUS_ONE, MINUS_ONE, null);
-		List<String> docIds2 = new ArrayList<String>(1);
-		docIds2.add(docId2);
-		assertEquals(BigInteger.valueOf(1L), objectList2.getNumItems());
-		
-		// multi filing, get object parents
-		switchCallContext("TestAdmin");
-		String secFolderId = createFolderWithAcls("secondFolder", fRootFolderId, "cmis:folder", 
-				standardAcl, defaultAcl);  	
-		String docId3 = createDocumentWithAcls("thirdDoc", folderId2, "ComplexType",
-				addAcl, null);
-		fMultiSvc.addObjectToFolder(fRepositoryId, docId3, secFolderId, true, null);
-		
-		switchCallContext("TestUser");  // second parent is not visible
-		List<ObjectParentData> objectParentData = fNavSvc.getObjectParents(fRepositoryId, docId3, null, null, null, null, true, null);
-		assertEquals(1, objectParentData.size());
-		assertEquals(folderId2, objectParentData.get(0).getObject().getId());
+
+        // only direct children are returned
+        ObjectList objectList2 = fNavSvc.getCheckedOutDocs(fRepositoryId, fRootFolderId, null, null, false,
+                IncludeRelationships.NONE, null, MINUS_ONE, MINUS_ONE, null);
+        List<String> docIds2 = new ArrayList<String>(1);
+        docIds2.add(docId2);
+        assertEquals(BigInteger.valueOf(1L), objectList2.getNumItems());
+
+        // multi filing, get object parents
+        switchCallContext("TestAdmin");
+        String secFolderId = createFolderWithAcls("secondFolder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
+        String docId3 = createDocumentWithAcls("thirdDoc", folderId2, "ComplexType", addAcl, null);
+        fMultiSvc.addObjectToFolder(fRepositoryId, docId3, secFolderId, true, null);
+
+        switchCallContext("TestUser"); // second parent is not visible
+        List<ObjectParentData> objectParentData = fNavSvc.getObjectParents(fRepositoryId, docId3, null, null, null,
+                null, true, null);
+        assertEquals(1, objectParentData.size());
+        assertEquals(folderId2, objectParentData.get(0).getObject().getId());
         LOG.debug("...stop test checkVisibleObjects()");
-	}
-		
-	@Test
-	public void testQueryAccess()
-	{
-		createCustomPropertyDocuments();
-		
-		String queryStatement;
-		List<ObjectData> objectDataList;
-		ObjectList objectList;
-		ObjectData first;
-		
-		switchCallContext("TestUser"); // Testuser has no permissions to view a document
-		queryStatement = "select * from cmis:document";
-		objectList = fDiscSvc.query(fRepositoryId, queryStatement, null, null, null,
-				null, MINUS_ONE, MINUS_ONE, null);
-		assertTrue ( 0L == objectList.getNumItems().longValue());
-		
-		// add a permission for a document
-		switchCallContext("TestAdmin"); 
-		String docId20 = idMap.get("customDocId20");
-		fAclSvc.applyAcl(fRepositoryId, idMap.get("customDocId20"), testUserAcl, null, AclPropagation.OBJECTONLY, null);
-		
-		switchCallContext("TestUser"); // Testuser has has only permissions for customDocId20
-		queryStatement = "select * from ComplexType where IntProp <= 20";
-		
-		objectList = fDiscSvc.query(fRepositoryId, queryStatement, null, null, null,
-				null, MINUS_ONE, MINUS_ONE, null); 
-		assertTrue ( 1L == objectList.getNumItems().longValue());
-		objectDataList = objectList.getObjects();
-		first = objectDataList.get(0);
-		assertTrue(first.getBaseTypeId().equals(BaseTypeId.CMIS_DOCUMENT ));
-	}
-	
-	protected String createDocumentWithAcls(String name, String folderId, String typeId, 
-			Acl addACEs, Acl removeACEs)
-	{
-		return createDocumentWithAcls(name, folderId, typeId, VersioningState.NONE, addACEs, removeACEs);
-	}
-	
-    protected String createDocumentWithAcls(String name, String folderId, String typeId, VersioningState versioningState,
-            Acl addACEs, Acl removeACEs)
-    {
+    }
+
+    @Test
+    public void testQueryAccess() {
+        createCustomPropertyDocuments();
+
+        String queryStatement;
+        List<ObjectData> objectDataList;
+        ObjectList objectList;
+        ObjectData first;
+
+        switchCallContext("TestUser"); // Testuser has no permissions to view a
+                                       // document
+        queryStatement = "select * from cmis:document";
+        objectList = fDiscSvc.query(fRepositoryId, queryStatement, null, null, null, null, MINUS_ONE, MINUS_ONE, null);
+        assertTrue(0L == objectList.getNumItems().longValue());
+
+        // add a permission for a document
+        switchCallContext("TestAdmin");
+        String docId20 = idMap.get("customDocId20");
+        fAclSvc.applyAcl(fRepositoryId, idMap.get("customDocId20"), testUserAcl, null, AclPropagation.OBJECTONLY, null);
+
+        switchCallContext("TestUser"); // Testuser has has only permissions for
+                                       // customDocId20
+        queryStatement = "select * from ComplexType where IntProp <= 20";
+
+        objectList = fDiscSvc.query(fRepositoryId, queryStatement, null, null, null, null, MINUS_ONE, MINUS_ONE, null);
+        assertTrue(1L == objectList.getNumItems().longValue());
+        objectDataList = objectList.getObjects();
+        first = objectDataList.get(0);
+        assertTrue(first.getBaseTypeId().equals(BaseTypeId.CMIS_DOCUMENT));
+    }
+
+    protected String createDocumentWithAcls(String name, String folderId, String typeId, Acl addACEs, Acl removeACEs) {
+        return createDocumentWithAcls(name, folderId, typeId, VersioningState.NONE, addACEs, removeACEs);
+    }
+
+    protected String createDocumentWithAcls(String name, String folderId, String typeId,
+            VersioningState versioningState, Acl addACEs, Acl removeACEs) {
         ContentStream contentStream = null;
         List<String> policies = null;
         ExtensionsData extension = null;
 
         Properties props = createDocumentProperties(name, typeId);
 
-        String id = fObjSvc.createDocument(fRepositoryId, props, folderId, contentStream, versioningState , policies,
+        String id = fObjSvc.createDocument(fRepositoryId, props, folderId, contentStream, versioningState, policies,
                 addACEs, removeACEs, extension);
         return id;
     }
-	
-	protected String createFolderWithAcls(String name, String folderId, String typeId, 
-			Acl addACEs, Acl removeACEs)
-	{
-		List<String> policies = null;
-		ExtensionsData extension = null;
-
-		Properties props = createFolderProperties(name, typeId);
-
-	
-		String id = fObjSvc.createFolder(fRepositoryId, props, folderId, policies,
-				addACEs, removeACEs, extension);
-		return id;
-	}
-	
-	 protected Properties createRelationshipProperties(String sourceId, String targetId) {
-	        List<PropertyData<?>> properties = new ArrayList<PropertyData<?>>();
-	        properties.add(fFactory.createPropertyIdData(PropertyIds.SOURCE_ID, sourceId));
-	        properties.add(fFactory.createPropertyIdData(PropertyIds.TARGET_ID, targetId));
-	        properties.add(fFactory.createPropertyIdData(PropertyIds.OBJECT_TYPE_ID, 
-	        		EnumBaseObjectTypeIds.CMIS_RELATIONSHIP.value()));
-	        Properties props = fFactory.createPropertiesData(properties);
-	        return props;
-	 }
-	 
-	 private void switchCallContext(String user) {
-	     ((DummyCallContext) fTestCallContext).put(CallContext.USERNAME, user);
-	 }
-	
-	protected void createCustomPropertyDocuments()
-	{
-		switchCallContext("TestAdmin"); 
-		// create folder
-		String folderId = createFolderWithAcls("customFolder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
-		idMap.put("customFolder", folderId);
-
-		// create documents
-		List<PropertyData<?>> properties10 = new ArrayList<PropertyData<?>>();
-		properties10.add(fFactory.createPropertyIntegerData("IntProp", BigInteger.valueOf(10)));
-		properties10.add(fFactory.createPropertyStringData("StringProp", "10 string"));
-		properties10.add(fFactory.createPropertyBooleanData("BooleanProp", true));
-		GregorianCalendar gregorianCalendar = CalendarHelper.fromString("2010-07-10T12:00:00.000-01:00");
-		properties10.add(fFactory.createPropertyDateTimeData("DateTimeProp", gregorianCalendar));
-		String customDocId10 = createDocumentWithProperties("customDocument10", folderId, "ComplexType",
-				properties10, false);
-		idMap.put("customDocId10", customDocId10);
-
-		List<PropertyData<?>>  properties20 = new ArrayList<PropertyData<?>>();
-		properties20.add(fFactory.createPropertyIntegerData("IntProp", BigInteger.valueOf(20)));
-		properties20.add(fFactory.createPropertyStringData("StringProp", "20 string"));
-		properties20.add(fFactory.createPropertyBooleanData("BooleanProp", false));
-		gregorianCalendar = CalendarHelper.fromString("2010-07-20T12:00:00.000-01:00");
-		properties20.add(fFactory.createPropertyDateTimeData("DateTimeProp", gregorianCalendar));
-		String customDocId20 = createDocumentWithProperties("customDocument20", folderId, "ComplexType", 
-				properties20,false);
-		idMap.put("customDocId20", customDocId20);
-
-		List<PropertyData<?>>  properties30 = new ArrayList<PropertyData<?>>();
-		properties30.add(fFactory.createPropertyIntegerData("IntProp", BigInteger.valueOf(30)));
-		properties30.add(fFactory.createPropertyStringData("StringProp", "30 string"));
-		properties30.add(fFactory.createPropertyBooleanData("BooleanProp", true));
-		gregorianCalendar = CalendarHelper.fromString("2010-07-30T12:00:00.000-01:00");
-		properties30.add(fFactory.createPropertyDateTimeData("DateTimeProp", gregorianCalendar));
-		String customDocId30 = createDocumentWithProperties("customDocument30", folderId, "ComplexType",
-				properties30, false);
-		idMap.put("customDocId30", customDocId30);
-	
-	}
-	
-	  protected String createDocumentWithProperties(String name, String folderId, String typeId, List<PropertyData<?>> properties,
-	            boolean withContent) {
-	        ContentStream contentStream = null;
-	        
-	        // add document properties
-	        properties.add(fFactory.createPropertyIdData(PropertyIds.NAME, name));
-	        properties.add(fFactory.createPropertyIdData(PropertyIds.OBJECT_TYPE_ID, typeId));
-	        Properties props = fFactory.createPropertiesData(properties);
 
-	        if (withContent) {
-                contentStream = createContent();
-            }
+    protected String createFolderWithAcls(String name, String folderId, String typeId, Acl addACEs, Acl removeACEs) {
+        List<String> policies = null;
+        ExtensionsData extension = null;
 
-	        String id = null;
-	        try {
-	            id = fObjSvc.createDocument(fRepositoryId, props, folderId, contentStream, VersioningState.NONE, null,
-	                    null, null, null);
-	            if (null == id) {
-                    fail("createDocument failed.");
-                }
-	        } catch (Exception e) {
-	            fail("createDocument() failed with exception: " + e);
-	        }
-	        return id;
-
-	    }
-
-	    private Acl createAcl(String principalId, EnumBasicPermissions permission) {
-	        List<Ace> acesAdd = Arrays.asList(new Ace[] { 
-	                createAce(principalId, permission),
-	                });
-	       return fFactory.createAccessControlList(acesAdd);                
-	    }
-
-	    private Ace createAce(String principalId, EnumBasicPermissions permission) {
-	        return  fFactory.createAccessControlEntry(principalId, Collections.singletonList( permission.value() ));
-	    }
+        Properties props = createFolderProperties(name, typeId);
 
-	    private static boolean aclEquals(Acl acl1, Acl acl2) {
-	        if (acl1 == acl2) {
-                return true;
-            }
-	        if (acl1 == null || acl2 == null) {
-                return false;
+        String id = fObjSvc.createFolder(fRepositoryId, props, folderId, policies, addACEs, removeACEs, extension);
+        return id;
+    }
+
+    protected Properties createRelationshipProperties(String sourceId, String targetId) {
+        List<PropertyData<?>> properties = new ArrayList<PropertyData<?>>();
+        properties.add(fFactory.createPropertyIdData(PropertyIds.SOURCE_ID, sourceId));
+        properties.add(fFactory.createPropertyIdData(PropertyIds.TARGET_ID, targetId));
+        properties.add(fFactory.createPropertyIdData(PropertyIds.OBJECT_TYPE_ID,
+                EnumBaseObjectTypeIds.CMIS_RELATIONSHIP.value()));
+        Properties props = fFactory.createPropertiesData(properties);
+        return props;
+    }
+
+    private void switchCallContext(String user) {
+        ((DummyCallContext) fTestCallContext).put(CallContext.USERNAME, user);
+    }
+
+    protected void createCustomPropertyDocuments() {
+        switchCallContext("TestAdmin");
+        // create folder
+        String folderId = createFolderWithAcls("customFolder", fRootFolderId, "cmis:folder", standardAcl, defaultAcl);
+        idMap.put("customFolder", folderId);
+
+        // create documents
+        List<PropertyData<?>> properties10 = new ArrayList<PropertyData<?>>();
+        properties10.add(fFactory.createPropertyIntegerData("IntProp", BigInteger.valueOf(10)));
+        properties10.add(fFactory.createPropertyStringData("StringProp", "10 string"));
+        properties10.add(fFactory.createPropertyBooleanData("BooleanProp", true));
+        GregorianCalendar gregorianCalendar = CalendarHelper.fromString("2010-07-10T12:00:00.000-01:00");
+        properties10.add(fFactory.createPropertyDateTimeData("DateTimeProp", gregorianCalendar));
+        String customDocId10 = createDocumentWithProperties("customDocument10", folderId, "ComplexType", properties10,
+                false);
+        idMap.put("customDocId10", customDocId10);
+
+        List<PropertyData<?>> properties20 = new ArrayList<PropertyData<?>>();
+        properties20.add(fFactory.createPropertyIntegerData("IntProp", BigInteger.valueOf(20)));
+        properties20.add(fFactory.createPropertyStringData("StringProp", "20 string"));
+        properties20.add(fFactory.createPropertyBooleanData("BooleanProp", false));
+        gregorianCalendar = CalendarHelper.fromString("2010-07-20T12:00:00.000-01:00");
+        properties20.add(fFactory.createPropertyDateTimeData("DateTimeProp", gregorianCalendar));
+        String customDocId20 = createDocumentWithProperties("customDocument20", folderId, "ComplexType", properties20,
+                false);
+        idMap.put("customDocId20", customDocId20);
+
+        List<PropertyData<?>> properties30 = new ArrayList<PropertyData<?>>();
+        properties30.add(fFactory.createPropertyIntegerData("IntProp", BigInteger.valueOf(30)));
+        properties30.add(fFactory.createPropertyStringData("StringProp", "30 string"));
+        properties30.add(fFactory.createPropertyBooleanData("BooleanProp", true));
+        gregorianCalendar = CalendarHelper.fromString("2010-07-30T12:00:00.000-01:00");
+        properties30.add(fFactory.createPropertyDateTimeData("DateTimeProp", gregorianCalendar));
+        String customDocId30 = createDocumentWithProperties("customDocument30", folderId, "ComplexType", properties30,
+                false);
+        idMap.put("customDocId30", customDocId30);
+
+    }
+
+    protected String createDocumentWithProperties(String name, String folderId, String typeId,
+            List<PropertyData<?>> properties, boolean withContent) {
+        ContentStream contentStream = null;
+
+        // add document properties
+        properties.add(fFactory.createPropertyIdData(PropertyIds.NAME, name));
+        properties.add(fFactory.createPropertyIdData(PropertyIds.OBJECT_TYPE_ID, typeId));
+        Properties props = fFactory.createPropertiesData(properties);
+
+        if (withContent) {
+            contentStream = createContent();
+        }
+
+        String id = null;
+        try {
+            id = fObjSvc.createDocument(fRepositoryId, props, folderId, contentStream, VersioningState.NONE, null,
+                    null, null, null);
+            if (null == id) {
+                fail("createDocument failed.");
             }
-	        if (acl1.getClass() != acl2.getClass()) {
-                return false;
+        } catch (Exception e) {
+            fail("createDocument() failed with exception: " + e);
+        }
+        return id;
+
+    }
+
+    private Acl createAcl(String principalId, EnumBasicPermissions permission) {
+        List<Ace> acesAdd = Arrays.asList(new Ace[] { createAce(principalId, permission), });
+        return fFactory.createAccessControlList(acesAdd);
+    }
+
+    private Ace createAce(String principalId, EnumBasicPermissions permission) {
+        return fFactory.createAccessControlEntry(principalId, Collections.singletonList(permission.value()));
+    }
+
+    private static boolean aclEquals(Acl acl1, Acl acl2) {
+        if (acl1 == acl2) {
+            return true;
+        }
+        if (acl1 == null || acl2 == null) {
+            return false;
+        }
+        if (acl1.getClass() != acl2.getClass()) {
+            return false;
+        }
+        if (acl1.getAces().size() != acl2.getAces().size()) {
+            return false;
+        }
+        for (int i = 0; i < acl1.getAces().size(); i++) {
+            aclHasAce(acl1.getAces(), acl2.getAces().get(i));
+        }
+        return true;
+    }
+
+    private static boolean aclHasAce(List<Ace> aces, Ace ace) {
+        for (Ace ace2 : aces) {
+            if (!ace.getPrincipalId().equals(ace2.getPrincipalId())) {
+                continue;
             }
-            if (acl1.getAces().size() != acl2.getAces().size()) {
-                return false;
+            if (ace.getPermissions().size() != ace2.getPermissions().size()) {
+                continue;
             }
-	        for (int i=0; i<acl1.getAces().size(); i++) {
-	            aclHasAce(acl1.getAces(), acl2.getAces().get(i));
-	        }
-	        return true;
-	    }
-
-	    private static boolean aclHasAce( List<Ace> aces, Ace ace) {
-	        for (Ace ace2 : aces) {
-                if (!ace.getPrincipalId().equals(ace2.getPrincipalId())) {
+            for (int i = 0; i < ace2.getPermissions().size(); i++) {
+                if (!aceHasPermission(ace.getPermissions(), ace2.getPermissions().get(i))) {
                     continue;
                 }
-                if (ace.getPermissions().size() != ace2.getPermissions().size()) {
-                    continue;
-                }
-                for (int i=0; i<ace2.getPermissions().size(); i++) {
-                    if (!aceHasPermission(ace.getPermissions(), ace2.getPermissions().get(i))) {
-                        continue;
-                    }
-                }
+            }
 
-                return true;
-	        }
-	        return false;
-	    }
+            return true;
+        }
+        return false;
+    }
 
-	   private static boolean aceHasPermission( List<String> permissions, String permission) {
-	      for (String permission2 : permissions) {
+    private static boolean aceHasPermission(List<String> permissions, String permission) {
+        for (String permission2 : permissions) {
             if (permission2.equals(permission)) {
                 return true;
             }
         }
-	      return false;
-	   }
+        return false;
+    }
 
-	    private String createVersionedDocument(String name, String folderId) {
+    private String createVersionedDocument(String name, String folderId) {
 
-	        VersioningState versioningState = VersioningState.MAJOR;
-	        String id = null;
-	        Map<String, String> properties = new HashMap<String, String>();
-	        id = fCreator.createDocument(name, UnitTestTypeSystemCreator.VERSIONED_TYPE, folderId,
-	                versioningState, properties);
-
-	        return id;
-	    }
-	    
-	    private void assertObjectDataListIds(List<ObjectInFolderData> folderData, String id) {
-	        boolean found = false;
-	        for (ObjectInFolderData folder : folderData) {

[... 83 lines stripped ...]


Mime
View raw message