mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-06-16 17:55:15 +00:00
Merged V2.2 to HEAD
7700: Added store level ACLs. 7705: Merged V2.1 to V2.2 7701: Fixes a number of problems with FS deployment. Should work on windows now. 7712: AWC-1473: Fixed rendering of sidebar in Safari 7718: Merged V2.1 to V2.2 7704: Fix for HSQL column name clash - NEXT is reserved, so now NEXT_ID 7719: Build fix after Qname changes 7730: Build fix for email group. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@8446 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
parent
5aa886087b
commit
bccc560c44
@ -369,7 +369,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a directory.");
|
throw new AVMWrongTypeException("Not a directory.");
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.CREATE_CHILDREN))
|
if (!can(null, node, PermissionService.CREATE_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write in: " + parent);
|
throw new AccessDeniedException("Not allowed to write in: " + parent);
|
||||||
}
|
}
|
||||||
@ -553,7 +553,7 @@ public class AVMRepository
|
|||||||
throw new AVMNotFoundException("Path not found.");
|
throw new AVMNotFoundException("Path not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dirNode = (DirectoryNode)dPath.getCurrentNode();
|
DirectoryNode dirNode = (DirectoryNode)dPath.getCurrentNode();
|
||||||
if (!can(dirNode, PermissionService.ADD_CHILDREN))
|
if (!can(dstRepo, dirNode, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not permitted to add children: " + dstPath);
|
throw new AccessDeniedException("Not permitted to add children: " + dstPath);
|
||||||
}
|
}
|
||||||
@ -735,7 +735,7 @@ public class AVMRepository
|
|||||||
throw new AVMNotFoundException("Path not found.");
|
throw new AVMNotFoundException("Path not found.");
|
||||||
}
|
}
|
||||||
srcDir = (DirectoryNode)sPath.getCurrentNode();
|
srcDir = (DirectoryNode)sPath.getCurrentNode();
|
||||||
if (!can(srcDir, PermissionService.DELETE_CHILDREN) || !can(srcDir, PermissionService.ADD_CHILDREN))
|
if (!can(srcRepo, srcDir, PermissionService.DELETE_CHILDREN) || !can(srcRepo, srcDir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read or write: " + srcPath);
|
throw new AccessDeniedException("Not allowed to read or write: " + srcPath);
|
||||||
}
|
}
|
||||||
@ -766,7 +766,7 @@ public class AVMRepository
|
|||||||
throw new AVMNotFoundException("Path not found.");
|
throw new AVMNotFoundException("Path not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dstDir = (DirectoryNode)dPath.getCurrentNode();
|
DirectoryNode dstDir = (DirectoryNode)dPath.getCurrentNode();
|
||||||
if (!can(dstDir, PermissionService.ADD_CHILDREN))
|
if (!can(dstRepo, dstDir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + dstPath);
|
throw new AccessDeniedException("Not allowed to write: " + dstPath);
|
||||||
}
|
}
|
||||||
@ -981,7 +981,7 @@ public class AVMRepository
|
|||||||
fLookupCache.onDelete(name);
|
fLookupCache.onDelete(name);
|
||||||
AVMNode root = store.getRoot();
|
AVMNode root = store.getRoot();
|
||||||
// TODO Probably a special PermissionService.PURGE is needed.
|
// TODO Probably a special PermissionService.PURGE is needed.
|
||||||
if (!can(root, PermissionService.DELETE_CHILDREN))
|
if (!can(store, root, PermissionService.DELETE_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to purge: " + name);
|
throw new AccessDeniedException("Not allowed to purge: " + name);
|
||||||
}
|
}
|
||||||
@ -1061,7 +1061,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException(desc + " is not a File.");
|
throw new AVMWrongTypeException(desc + " is not a File.");
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_CONTENT))
|
if (!can(null, node, PermissionService.READ_CONTENT))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read content: " + desc);
|
throw new AccessDeniedException("Not allowed to read content: " + desc);
|
||||||
}
|
}
|
||||||
@ -1152,7 +1152,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMBadArgumentException("Invalid Node.");
|
throw new AVMBadArgumentException("Invalid Node.");
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read children: " + dir);
|
throw new AccessDeniedException("Not allowed to read children: " + dir);
|
||||||
}
|
}
|
||||||
@ -1190,7 +1190,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a directory.");
|
throw new AVMWrongTypeException("Not a directory.");
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read children: " + dir);
|
throw new AccessDeniedException("Not allowed to read children: " + dir);
|
||||||
}
|
}
|
||||||
@ -1488,7 +1488,7 @@ public class AVMRepository
|
|||||||
throw new AVMWrongTypeException("Not a directory.");
|
throw new AVMWrongTypeException("Not a directory.");
|
||||||
}
|
}
|
||||||
DirectoryNode dirNode = (DirectoryNode)node;
|
DirectoryNode dirNode = (DirectoryNode)node;
|
||||||
if (!can(dirNode, PermissionService.READ_CHILDREN))
|
if (!can(null, dirNode, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read children: " + dir);
|
throw new AccessDeniedException("Not allowed to read children: " + dir);
|
||||||
}
|
}
|
||||||
@ -1595,7 +1595,7 @@ public class AVMRepository
|
|||||||
*/
|
*/
|
||||||
private void recursiveGetVersionPaths(AVMNode node, List<String> components, List<String> paths, DirectoryNode root, String storeName)
|
private void recursiveGetVersionPaths(AVMNode node, List<String> components, List<String> paths, DirectoryNode root, String storeName)
|
||||||
{
|
{
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1655,7 +1655,7 @@ public class AVMRepository
|
|||||||
private void recursiveGetPaths(AVMNode node, List<String> components,
|
private void recursiveGetPaths(AVMNode node, List<String> components,
|
||||||
List<Pair<Integer, String>> paths)
|
List<Pair<Integer, String>> paths)
|
||||||
{
|
{
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1695,7 +1695,7 @@ public class AVMRepository
|
|||||||
*/
|
*/
|
||||||
private Pair<Integer, String> recursiveGetAPath(AVMNode node, List<String> components)
|
private Pair<Integer, String> recursiveGetAPath(AVMNode node, List<String> components)
|
||||||
{
|
{
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@ -1753,7 +1753,7 @@ public class AVMRepository
|
|||||||
private void recursiveGetHeadPaths(AVMNode node, List<String> components,
|
private void recursiveGetHeadPaths(AVMNode node, List<String> components,
|
||||||
List<Pair<Integer, String>> paths)
|
List<Pair<Integer, String>> paths)
|
||||||
{
|
{
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1792,7 +1792,7 @@ public class AVMRepository
|
|||||||
List<Pair<Integer, String>> paths, DirectoryNode root,
|
List<Pair<Integer, String>> paths, DirectoryNode root,
|
||||||
String storeName)
|
String storeName)
|
||||||
{
|
{
|
||||||
if (!can(node, PermissionService.READ_CHILDREN))
|
if (!can(null, node, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1895,7 +1895,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Path not found.");
|
throw new AVMNotFoundException("Path not found.");
|
||||||
}
|
}
|
||||||
if (!can(lookup.getCurrentNode(), PermissionService.READ_PROPERTIES))
|
if (!can(store, lookup.getCurrentNode(), PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + path);
|
throw new AccessDeniedException("Not allowed to read properties: " + path);
|
||||||
}
|
}
|
||||||
@ -2036,7 +2036,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Not found.");
|
throw new AVMNotFoundException("Not found.");
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_PROPERTIES))
|
if (!can(null, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + desc);
|
throw new AccessDeniedException("Not allowed to read properties: " + desc);
|
||||||
}
|
}
|
||||||
@ -2052,7 +2052,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_PROPERTIES))
|
if (!can(null, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -2436,11 +2436,11 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Node not found.");
|
throw new AVMNotFoundException("Node not found.");
|
||||||
}
|
}
|
||||||
if (!can(lNode, PermissionService.READ_PROPERTIES))
|
if (!can(null, lNode, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + left);
|
throw new AccessDeniedException("Not allowed to read properties: " + left);
|
||||||
}
|
}
|
||||||
if (!can(rNode, PermissionService.READ_PROPERTIES))
|
if (!can(null, rNode, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + right);
|
throw new AccessDeniedException("Not allowed to read properties: " + right);
|
||||||
}
|
}
|
||||||
@ -2829,7 +2829,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMException("Directory has not already been copied.");
|
throw new AVMException("Directory has not already been copied.");
|
||||||
}
|
}
|
||||||
if (!can(dir, PermissionService.ADD_CHILDREN))
|
if (!can(null, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + parent);
|
throw new AccessDeniedException("Not allowed to write: " + parent);
|
||||||
}
|
}
|
||||||
@ -2866,7 +2866,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a Layered Directory.");
|
throw new AVMWrongTypeException("Not a Layered Directory.");
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.DELETE_CHILDREN))
|
if (!can(store, node, PermissionService.DELETE_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write in: " + path);
|
throw new AccessDeniedException("Not allowed to write in: " + path);
|
||||||
}
|
}
|
||||||
@ -3083,7 +3083,7 @@ public class AVMRepository
|
|||||||
private void recursiveGetStoreVersionPaths(String storeName, AVMNode node, int version, List<String> components,
|
private void recursiveGetStoreVersionPaths(String storeName, AVMNode node, int version, List<String> components,
|
||||||
List<String> paths)
|
List<String> paths)
|
||||||
{
|
{
|
||||||
if (!can(node, PermissionService.READ))
|
if (!can(null, node, PermissionService.READ))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -3116,7 +3116,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Node not found: " + desc);
|
throw new AVMNotFoundException("Node not found: " + desc);
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_PROPERTIES))
|
if (!can(null, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + desc);
|
throw new AccessDeniedException("Not allowed to read properties: " + desc);
|
||||||
}
|
}
|
||||||
@ -3133,7 +3133,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Node not found: " + desc);
|
throw new AVMNotFoundException("Node not found: " + desc);
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_CONTENT))
|
if (!can(null, node, PermissionService.READ_CONTENT))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + desc);
|
throw new AccessDeniedException("Not allowed to read: " + desc);
|
||||||
}
|
}
|
||||||
@ -3152,7 +3152,7 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Node not found: " + desc);
|
throw new AVMNotFoundException("Node not found: " + desc);
|
||||||
}
|
}
|
||||||
if (!can(node, PermissionService.READ_PROPERTIES))
|
if (!can(null, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + desc);
|
throw new AccessDeniedException("Not allowed to read properties: " + desc);
|
||||||
}
|
}
|
||||||
@ -3164,12 +3164,13 @@ public class AVMRepository
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Evaluate permission on a node. I've got a bad feeling about this...
|
* Evaluate permission on a node. I've got a bad feeling about this...
|
||||||
*
|
* @param store
|
||||||
* @param node
|
* @param node
|
||||||
* @param permission
|
* @param permission
|
||||||
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public boolean can(AVMNode node, String permission)
|
public boolean can(AVMStore store, AVMNode node, String permission)
|
||||||
{
|
{
|
||||||
DbAccessControlList acl = node.getAcl();
|
DbAccessControlList acl = node.getAcl();
|
||||||
|
|
||||||
@ -3223,7 +3224,46 @@ public class AVMRepository
|
|||||||
{
|
{
|
||||||
aclId = acl.getId();
|
aclId = acl.getId();
|
||||||
}
|
}
|
||||||
|
if (store != null)
|
||||||
|
{
|
||||||
|
DbAccessControlList storeAcl = store.getStoreAcl();
|
||||||
|
if (storeAcl != null)
|
||||||
|
{
|
||||||
|
Long storeAclID = storeAcl.getId();
|
||||||
|
context.getAdditionalContext().put("STORE_ACL_ID", storeAclID);
|
||||||
|
}
|
||||||
|
}
|
||||||
return fPermissionService.hasPermission(aclId, context, permission)
|
return fPermissionService.hasPermission(aclId, context, permission)
|
||||||
== AccessStatus.ALLOWED;
|
== AccessStatus.ALLOWED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the acl on a store.
|
||||||
|
* @param storeName
|
||||||
|
* @param acl
|
||||||
|
*/
|
||||||
|
public void setStoreAcl(String storeName, DbAccessControlList acl)
|
||||||
|
{
|
||||||
|
AVMStore store = getAVMStoreByName(storeName);
|
||||||
|
if (store == null)
|
||||||
|
{
|
||||||
|
throw new AVMNotFoundException("Store not found: " + storeName);
|
||||||
|
}
|
||||||
|
store.setStoreAcl(acl);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the ACL on a store.
|
||||||
|
* @param storeName
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public DbAccessControlList getStoreAcl(String storeName)
|
||||||
|
{
|
||||||
|
AVMStore store = getAVMStoreByName(storeName);
|
||||||
|
if (store == null)
|
||||||
|
{
|
||||||
|
throw new AVMNotFoundException("Store not found: " + storeName);
|
||||||
|
}
|
||||||
|
return store.getStoreAcl();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -328,7 +328,7 @@ public class AVMServicePermissionsTest extends TestCase
|
|||||||
runAs(user);
|
runAs(user);
|
||||||
AVMNodeDescriptor desc = avmService.lookup(-1, path);
|
AVMNodeDescriptor desc = avmService.lookup(-1, path);
|
||||||
AVMNode node = avmNodeDAO.getByID(desc.getId());
|
AVMNode node = avmNodeDAO.getByID(desc.getId());
|
||||||
boolean can = AVMRepository.GetInstance().can(node, permission);
|
boolean can = AVMRepository.GetInstance().can(null, node, permission);
|
||||||
return allowed ? can : !can;
|
return allowed ? can : !can;
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
@ -345,11 +345,11 @@ public class AVMServicePermissionsTest extends TestCase
|
|||||||
runAs(user);
|
runAs(user);
|
||||||
AVMNodeDescriptor desc = avmService.lookup(-1, path);
|
AVMNodeDescriptor desc = avmService.lookup(-1, path);
|
||||||
AVMNode node = avmNodeDAO.getByID(desc.getId());
|
AVMNode node = avmNodeDAO.getByID(desc.getId());
|
||||||
boolean can = AVMRepository.GetInstance().can(node, permission);
|
boolean can = AVMRepository.GetInstance().can(null, node, permission);
|
||||||
long start = System.nanoTime();
|
long start = System.nanoTime();
|
||||||
for(int i = 0; i < count; i++)
|
for(int i = 0; i < count; i++)
|
||||||
{
|
{
|
||||||
can = AVMRepository.GetInstance().can(node, permission);
|
can = AVMRepository.GetInstance().can(null, node, permission);
|
||||||
}
|
}
|
||||||
long end = System.nanoTime();
|
long end = System.nanoTime();
|
||||||
System.out.println("Can in "+((end-start)/1.0e9f));
|
System.out.println("Can in "+((end-start)/1.0e9f));
|
||||||
|
@ -70,6 +70,18 @@ public interface AVMStore
|
|||||||
*/
|
*/
|
||||||
public void setNewRoot(DirectoryNode root);
|
public void setNewRoot(DirectoryNode root);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the Acl associated with this store.
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public DbAccessControlList getStoreAcl();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the acl on this store.
|
||||||
|
* @param acl
|
||||||
|
*/
|
||||||
|
public void setStoreAcl(DbAccessControlList acl);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Snapshots this store. This sets all nodes in the
|
* Snapshots this store. This sets all nodes in the
|
||||||
* the store to the should be copied state, and creates
|
* the store to the should be copied state, and creates
|
||||||
|
@ -101,6 +101,11 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
*/
|
*/
|
||||||
private long fVers;
|
private long fVers;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Acl for this store.
|
||||||
|
*/
|
||||||
|
private DbAccessControlList fACL;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The AVMRepository.
|
* The AVMRepository.
|
||||||
*/
|
*/
|
||||||
@ -337,7 +342,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.ADD_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -454,7 +459,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.ADD_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -496,7 +501,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.ADD_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -563,7 +568,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + dstPath + " not found.");
|
throw new AVMNotFoundException("Path " + dstPath + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.ADD_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + dstPath);
|
throw new AccessDeniedException("Not allowed to write: " + dstPath);
|
||||||
}
|
}
|
||||||
@ -645,7 +650,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.READ_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -668,7 +673,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.READ_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -715,7 +720,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.READ_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -747,7 +752,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.DELETE_CHILDREN))
|
if (!fAVMRepository.can(this, dir, PermissionService.DELETE_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Not allowed to write: " + path);
|
throw new AVMNotFoundException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -776,7 +781,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a layered directory: " + dirPath);
|
throw new AVMWrongTypeException("Not a layered directory: " + dirPath);
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(node, PermissionService.DELETE_CHILDREN))
|
if (!fAVMRepository.can(this, node, PermissionService.DELETE_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + dirPath);
|
throw new AccessDeniedException("Not allowed to write: " + dirPath);
|
||||||
}
|
}
|
||||||
@ -875,7 +880,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
root = AVMDAOs.Instance().fAVMNodeDAO.getAVMStoreRoot(this, version);
|
root = AVMDAOs.Instance().fAVMNodeDAO.getAVMStoreRoot(this, version);
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(root, PermissionService.READ_CHILDREN))
|
if (!fAVMRepository.can(this, root, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + fName + "@" + version);
|
throw new AccessDeniedException("Not allowed to read: " + fName + "@" + version);
|
||||||
}
|
}
|
||||||
@ -924,7 +929,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.READ_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -957,7 +962,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMException("Not in a layered context: " + path);
|
throw new AVMException("Not in a layered context: " + path);
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(dir, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, dir, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -982,7 +987,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMException("Not in a layered context: " + path);
|
throw new AVMException("Not in a layered context: " + path);
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(dir, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, dir, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1008,6 +1013,19 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
return fName;
|
return fName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.alfresco.repo.avm.AVMStore#getAcl()
|
||||||
|
*/
|
||||||
|
public DbAccessControlList getStoreAcl()
|
||||||
|
{
|
||||||
|
return fACL;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStoreAcl(DbAccessControlList acl)
|
||||||
|
{
|
||||||
|
fACL = acl;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the next version id.
|
* Set the next version id.
|
||||||
* @param nextVersionID
|
* @param nextVersionID
|
||||||
@ -1117,7 +1135,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
}
|
}
|
||||||
AVMDAOs.Instance().fVersionLayeredNodeEntryDAO.delete(vRoot);
|
AVMDAOs.Instance().fVersionLayeredNodeEntryDAO.delete(vRoot);
|
||||||
AVMNode root = vRoot.getRoot();
|
AVMNode root = vRoot.getRoot();
|
||||||
if (!fAVMRepository.can(root, PermissionService.DELETE_CHILDREN))
|
if (!fAVMRepository.can(null, root, PermissionService.DELETE_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to purge: " + fName + "@" + version);
|
throw new AccessDeniedException("Not allowed to purge: " + fName + "@" + version);
|
||||||
}
|
}
|
||||||
@ -1164,7 +1182,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a LayeredDirectoryNode.");
|
throw new AVMWrongTypeException("Not a LayeredDirectoryNode.");
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1187,7 +1205,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1210,7 +1228,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1244,7 +1262,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.READ_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -1277,7 +1295,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.READ_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -1302,7 +1320,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1332,7 +1350,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1425,7 +1443,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("File Expected.");
|
throw new AVMWrongTypeException("File Expected.");
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(node, PermissionService.READ_CONTENT))
|
if (!fAVMRepository.can(this, node, PermissionService.READ_CONTENT))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read: " + path);
|
throw new AccessDeniedException("Not allowed to read: " + path);
|
||||||
}
|
}
|
||||||
@ -1452,7 +1470,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("File Expected.");
|
throw new AVMWrongTypeException("File Expected.");
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_CONTENT))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_CONTENT))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write content: " + path);
|
throw new AccessDeniedException("Not allowed to write content: " + path);
|
||||||
}
|
}
|
||||||
@ -1500,7 +1518,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path not found: " + path);
|
throw new AVMNotFoundException("Path not found: " + path);
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
||||||
}
|
}
|
||||||
@ -1521,7 +1539,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write: " + path);
|
throw new AccessDeniedException("Not allowed to write: " + path);
|
||||||
}
|
}
|
||||||
@ -1547,7 +1565,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.READ_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + path);
|
throw new AccessDeniedException("Not allowed to read properties: " + path);
|
||||||
}
|
}
|
||||||
@ -1570,7 +1588,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
||||||
}
|
}
|
||||||
@ -1607,7 +1625,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.READ_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.READ_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read properties: " + path);
|
throw new AccessDeniedException("Not allowed to read properties: " + path);
|
||||||
}
|
}
|
||||||
@ -1637,7 +1655,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.CHANGE_PERMISSIONS))
|
if (!fAVMRepository.can(this, node, PermissionService.CHANGE_PERMISSIONS))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to change permissions: " + path);
|
throw new AccessDeniedException("Not allowed to change permissions: " + path);
|
||||||
}
|
}
|
||||||
@ -1658,7 +1676,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(lPath.getCurrentNode(), PermissionService.READ_PERMISSIONS))
|
if (!fAVMRepository.can(this, lPath.getCurrentNode(), PermissionService.READ_PERMISSIONS))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read permissions: " + path + " in "+getName());
|
throw new AccessDeniedException("Not allowed to read permissions: " + path + " in "+getName());
|
||||||
}
|
}
|
||||||
@ -1679,7 +1697,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + parentPath + " not found.");
|
throw new AVMNotFoundException("Path " + parentPath + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.ADD_CHILDREN))
|
if (!fAVMRepository.can(null, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to add children: " + parentPath);
|
throw new AccessDeniedException("Not allowed to add children: " + parentPath);
|
||||||
}
|
}
|
||||||
@ -1702,8 +1720,8 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path " + path + " not found.");
|
throw new AVMNotFoundException("Path " + path + " not found.");
|
||||||
}
|
}
|
||||||
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
DirectoryNode dir = (DirectoryNode)lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(dir, PermissionService.DELETE_CHILDREN) ||
|
if (!fAVMRepository.can(null, dir, PermissionService.DELETE_CHILDREN) ||
|
||||||
!fAVMRepository.can(dir, PermissionService.ADD_CHILDREN))
|
!fAVMRepository.can(null, dir, PermissionService.ADD_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to revert: " + path);
|
throw new AccessDeniedException("Not allowed to revert: " + path);
|
||||||
}
|
}
|
||||||
@ -1743,7 +1761,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
throw new AVMNotFoundException("Path not found: " + path);
|
throw new AVMNotFoundException("Path not found: " + path);
|
||||||
}
|
}
|
||||||
AVMNode node = lPath.getCurrentNode();
|
AVMNode node = lPath.getCurrentNode();
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
||||||
}
|
}
|
||||||
@ -1765,7 +1783,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a File: " + path);
|
throw new AVMWrongTypeException("Not a File: " + path);
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
||||||
}
|
}
|
||||||
@ -1788,7 +1806,7 @@ public class AVMStoreImpl implements AVMStore, Serializable
|
|||||||
{
|
{
|
||||||
throw new AVMWrongTypeException("Not a File: " + path);
|
throw new AVMWrongTypeException("Not a File: " + path);
|
||||||
}
|
}
|
||||||
if (!fAVMRepository.can(node, PermissionService.WRITE_PROPERTIES))
|
if (!fAVMRepository.can(this, node, PermissionService.WRITE_PROPERTIES))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
throw new AccessDeniedException("Not allowed to write properties: " + path);
|
||||||
}
|
}
|
||||||
|
@ -443,7 +443,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
|
|||||||
if (entry.getValue().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (entry.getValue().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
entry.getValue().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
entry.getValue().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(entry.getValue(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(lookup.getAVMStore(), entry.getValue(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -457,7 +457,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
|
|||||||
if (entry.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (entry.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
entry.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
entry.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(entry.getChild(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(lPath.getAVMStore(), entry.getChild(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -489,7 +489,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
|
|||||||
if (entry.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (entry.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
entry.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
entry.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(entry.getChild(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(lPath != null ? lPath.getAVMStore() : null, entry.getChild(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -521,7 +521,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
|
|||||||
if (childNode.getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (childNode.getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
childNode.getType() == AVMNodeType.PLAIN_DIRECTORY)
|
childNode.getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(childNode, PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(null, childNode, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -565,7 +565,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
|
|||||||
if (entry.getValue().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (entry.getValue().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
entry.getValue().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
entry.getValue().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(entry.getValue(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(null, entry.getValue(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -583,7 +583,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
|
|||||||
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(child.getChild(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(null, child.getChild(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -132,7 +132,7 @@ public class LookupCache
|
|||||||
// before the end.
|
// before the end.
|
||||||
for (int i = 0; i < path.size() - 1; i++)
|
for (int i = 0; i < path.size() - 1; i++)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(dir, PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(null, dir, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read children: " + path.get(i));
|
throw new AccessDeniedException("Not allowed to read children: " + path.get(i));
|
||||||
}
|
}
|
||||||
@ -151,7 +151,7 @@ public class LookupCache
|
|||||||
dir = (DirectoryNode)result.getCurrentNode();
|
dir = (DirectoryNode)result.getCurrentNode();
|
||||||
}
|
}
|
||||||
// Now look up the last element.
|
// Now look up the last element.
|
||||||
if (!AVMRepository.GetInstance().can(dir, PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(null, dir, PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
throw new AccessDeniedException("Not allowed to read children: " + path.get(path.size() - 1));
|
throw new AccessDeniedException("Not allowed to read children: " + path.get(path.size() - 1));
|
||||||
}
|
}
|
||||||
|
@ -116,7 +116,7 @@ class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDirectory
|
|||||||
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(child.getChild(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(lPath.getAVMStore(), child.getChild(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -170,7 +170,7 @@ class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDirectory
|
|||||||
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
|
||||||
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
|
||||||
{
|
{
|
||||||
if (!AVMRepository.GetInstance().can(child.getChild(), PermissionService.READ_CHILDREN))
|
if (!AVMRepository.GetInstance().can(null, child.getChild(), PermissionService.READ_CHILDREN))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -140,6 +140,9 @@
|
|||||||
<many-to-one name="root" class="DirectoryNodeImpl"
|
<many-to-one name="root" class="DirectoryNodeImpl"
|
||||||
column="current_root_id" cascade="save-update" foreign-key="fk_avm_s_root">
|
column="current_root_id" cascade="save-update" foreign-key="fk_avm_s_root">
|
||||||
</many-to-one>
|
</many-to-one>
|
||||||
|
<!-- ACL -->
|
||||||
|
<many-to-one name="storeAcl" column="acl_id" foreign-key="fk_avm_s_acl" cascade="none"
|
||||||
|
class="org.alfresco.repo.domain.hibernate.DbAccessControlListImpl"/>
|
||||||
</class>
|
</class>
|
||||||
<class name="AVMStorePropertyImpl" proxy="AVMStoreProperty" table="avm_store_properties">
|
<class name="AVMStorePropertyImpl" proxy="AVMStoreProperty" table="avm_store_properties">
|
||||||
<id name="id" column="id" type="long">
|
<id name="id" column="id" type="long">
|
||||||
@ -257,7 +260,7 @@
|
|||||||
<class name="IssuerIDImpl" proxy="IssuerID" table="avm_issuer_ids" optimistic-lock="version" lazy="false">
|
<class name="IssuerIDImpl" proxy="IssuerID" table="avm_issuer_ids" optimistic-lock="version" lazy="false">
|
||||||
<id name="issuer" type="string" length="32" column="issuer"/>
|
<id name="issuer" type="string" length="32" column="issuer"/>
|
||||||
<version name="version" column="version" type="long"/>
|
<version name="version" column="version" type="long"/>
|
||||||
<property name="next" type="long" column="next" not-null="true"/>
|
<property name="next" type="long" column="next_id" not-null="true"/>
|
||||||
</class>
|
</class>
|
||||||
<query name="ChildEntry.DeleteByParent">
|
<query name="ChildEntry.DeleteByParent">
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
|
@ -192,16 +192,16 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
catRBase = nodeService.createNode(catRoot, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "Region"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catRBase = nodeService.createNode(catRoot, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "region"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
catROne = nodeService.createNode(catRBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "Europe"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catROne = nodeService.createNode(catRBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "Europe"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
catRTwo = nodeService.createNode(catRBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "RestOfWorld"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catRTwo = nodeService.createNode(catRBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "RestOfWorld"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
catRThree = nodeService.createNode(catRTwo, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "US"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catRThree = nodeService.createNode(catRTwo, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "US"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
|
|
||||||
nodeService.addChild(catRoot, catRBase, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "InvestmentRegion"));
|
nodeService.addChild(catRoot, catRBase, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "investmentRegion"));
|
||||||
nodeService.addChild(catRoot, catRBase, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "MarketingRegion"));
|
nodeService.addChild(catRoot, catRBase, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "marketingRegion"));
|
||||||
|
|
||||||
|
|
||||||
catACBase = nodeService.createNode(catRoot, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "AssetClass"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catACBase = nodeService.createNode(catRoot, ContentModel.ASSOC_CATEGORIES, QName.createQName(TEST_NAMESPACE, "assetClass"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
catACOne = nodeService.createNode(catACBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "Fixed"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catACOne = nodeService.createNode(catACBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "Fixed"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
catACTwo = nodeService.createNode(catACBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "Equity"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catACTwo = nodeService.createNode(catACBase, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "Equity"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
catACThree = nodeService.createNode(catACTwo, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "SpecialEquity"), ContentModel.TYPE_CATEGORY).getChildRef();
|
catACThree = nodeService.createNode(catACTwo, ContentModel.ASSOC_SUBCATEGORIES, QName.createQName(TEST_NAMESPACE, "SpecialEquity"), ContentModel.TYPE_CATEGORY).getChildRef();
|
||||||
@ -277,7 +277,7 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
model.createImport(NamespaceService.DICTIONARY_MODEL_1_0_URI, NamespaceService.DICTIONARY_MODEL_PREFIX);
|
model.createImport(NamespaceService.DICTIONARY_MODEL_1_0_URI, NamespaceService.DICTIONARY_MODEL_PREFIX);
|
||||||
model.createImport(NamespaceService.CONTENT_MODEL_1_0_URI, NamespaceService.CONTENT_MODEL_PREFIX);
|
model.createImport(NamespaceService.CONTENT_MODEL_1_0_URI, NamespaceService.CONTENT_MODEL_PREFIX);
|
||||||
|
|
||||||
regionCategorisationQName = QName.createQName(TEST_NAMESPACE, "Region");
|
regionCategorisationQName = QName.createQName(TEST_NAMESPACE, "region");
|
||||||
M2Aspect generalCategorisation = model.createAspect("test:" + regionCategorisationQName.getLocalName());
|
M2Aspect generalCategorisation = model.createAspect("test:" + regionCategorisationQName.getLocalName());
|
||||||
generalCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
generalCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
||||||
M2Property genCatProp = generalCategorisation.createProperty("test:region");
|
M2Property genCatProp = generalCategorisation.createProperty("test:region");
|
||||||
@ -289,7 +289,7 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
genCatProp.setTokenisedInIndex(false);
|
genCatProp.setTokenisedInIndex(false);
|
||||||
genCatProp.setType("d:" + DataTypeDefinition.CATEGORY.getLocalName());
|
genCatProp.setType("d:" + DataTypeDefinition.CATEGORY.getLocalName());
|
||||||
|
|
||||||
assetClassCategorisationQName = QName.createQName(TEST_NAMESPACE, "AssetClass");
|
assetClassCategorisationQName = QName.createQName(TEST_NAMESPACE, "assetClass");
|
||||||
M2Aspect assetClassCategorisation = model.createAspect("test:" + assetClassCategorisationQName.getLocalName());
|
M2Aspect assetClassCategorisation = model.createAspect("test:" + assetClassCategorisationQName.getLocalName());
|
||||||
assetClassCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
assetClassCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
||||||
M2Property acProp = assetClassCategorisation.createProperty("test:assetClass");
|
M2Property acProp = assetClassCategorisation.createProperty("test:assetClass");
|
||||||
@ -301,7 +301,7 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
acProp.setTokenisedInIndex(false);
|
acProp.setTokenisedInIndex(false);
|
||||||
acProp.setType("d:" + DataTypeDefinition.CATEGORY.getLocalName());
|
acProp.setType("d:" + DataTypeDefinition.CATEGORY.getLocalName());
|
||||||
|
|
||||||
investmentRegionCategorisationQName = QName.createQName(TEST_NAMESPACE, "InvestmentRegion");
|
investmentRegionCategorisationQName = QName.createQName(TEST_NAMESPACE, "investmentRegion");
|
||||||
M2Aspect investmentRegionCategorisation = model.createAspect("test:" + investmentRegionCategorisationQName.getLocalName());
|
M2Aspect investmentRegionCategorisation = model.createAspect("test:" + investmentRegionCategorisationQName.getLocalName());
|
||||||
investmentRegionCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
investmentRegionCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
||||||
M2Property irProp = investmentRegionCategorisation.createProperty("test:investmentRegion");
|
M2Property irProp = investmentRegionCategorisation.createProperty("test:investmentRegion");
|
||||||
@ -313,7 +313,7 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
irProp.setTokenisedInIndex(false);
|
irProp.setTokenisedInIndex(false);
|
||||||
irProp.setType("d:" + DataTypeDefinition.CATEGORY.getLocalName());
|
irProp.setType("d:" + DataTypeDefinition.CATEGORY.getLocalName());
|
||||||
|
|
||||||
marketingRegionCategorisationQName = QName.createQName(TEST_NAMESPACE, "MarketingRegion");
|
marketingRegionCategorisationQName = QName.createQName(TEST_NAMESPACE, "marketingRegion");
|
||||||
M2Aspect marketingRegionCategorisation = model.createAspect("test:" + marketingRegionCategorisationQName.getLocalName());
|
M2Aspect marketingRegionCategorisation = model.createAspect("test:" + marketingRegionCategorisationQName.getLocalName());
|
||||||
marketingRegionCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
marketingRegionCategorisation.setParentName("cm:" + ContentModel.ASPECT_CLASSIFIABLE.getLocalName());
|
||||||
M2Property mrProp = marketingRegionCategorisation.createProperty("test:marketingRegion");
|
M2Property mrProp = marketingRegionCategorisation.createProperty("test:marketingRegion");
|
||||||
@ -388,7 +388,7 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
searcher.setNamespacePrefixResolver(getNamespacePrefixReolsver(""));
|
searcher.setNamespacePrefixResolver(getNamespacePrefixReolsver(""));
|
||||||
ResultSet results;
|
ResultSet results;
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"//*\" AND (PATH:\"/test:AssetClass/test:Equity/member\" PATH:\"/test:MarketingRegion/member\")", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"//*\" AND (PATH:\"/test:assetClass/test:Equity/member\" PATH:\"/test:marketingRegion/member\")", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(9, results.length());
|
assertEquals(9, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
@ -415,13 +415,13 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
searcher.setNamespacePrefixResolver(getNamespacePrefixReolsver(""));
|
searcher.setNamespacePrefixResolver(getNamespacePrefixReolsver(""));
|
||||||
ResultSet results;
|
ResultSet results;
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:MarketingRegion\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:marketingRegion\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:MarketingRegion//member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:marketingRegion//member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(6, results.length());
|
assertEquals(6, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
@ -438,72 +438,72 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass/member\" ", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass/member\" ", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass/test:Fixed\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass/test:Fixed\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass/test:Equity\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass/test:Equity\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Fixed\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Fixed\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:*\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:*\"", null, null);
|
||||||
assertEquals(2, results.length());
|
assertEquals(2, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass//test:*\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass//test:*\"", null, null);
|
||||||
assertEquals(3, results.length());
|
assertEquals(3, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Fixed/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Fixed/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(8, results.length());
|
assertEquals(8, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(8, results.length());
|
assertEquals(8, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity/test:SpecialEquity/member//.\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity/test:SpecialEquity/member//.\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity/test:SpecialEquity/member//*\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity/test:SpecialEquity/member//*\"", null, null);
|
||||||
assertEquals(0, results.length());
|
assertEquals(0, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity/test:SpecialEquity/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity/test:SpecialEquity/member\"", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "+PATH:\"/test:AssetClass/test:Equity/member\" AND +PATH:\"/test:AssetClass/test:Fixed/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "+PATH:\"/test:assetClass/test:Equity/member\" AND +PATH:\"/test:assetClass/test:Fixed/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(3, results.length());
|
assertEquals(3, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity/member\" PATH:\"/test:AssetClass/test:Fixed/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity/member\" PATH:\"/test:assetClass/test:Fixed/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(13, results.length());
|
assertEquals(13, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
@ -512,52 +512,52 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
|
|
||||||
assertEquals(4, nodeService.getChildAssocs(catRoot).size());
|
assertEquals(4, nodeService.getChildAssocs(catRoot).size());
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:Region\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:region\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:Region/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:region/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:Region/test:Europe/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:region/test:Europe/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(2, results.length());
|
assertEquals(2, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:Region/test:RestOfWorld/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:region/test:RestOfWorld/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(2, results.length());
|
assertEquals(2, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:Region//member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:region//member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(5, results.length());
|
assertEquals(5, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:InvestmentRegion//member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:investmentRegion//member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(5, results.length());
|
assertEquals(5, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:MarketingRegion//member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:marketingRegion//member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(6, results.length());
|
assertEquals(6, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "+PATH:\"/test:AssetClass/test:Fixed/member\" AND +PATH:\"/test:Region/test:Europe/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "+PATH:\"/test:assetClass/test:Fixed/member\" AND +PATH:\"/test:region/test:Europe/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(2, results.length());
|
assertEquals(2, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "+PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass/test:Fixed/member\" AND +PATH:\"/cm:categoryContainer/cm:categoryRoot/test:Region/test:Europe/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "+PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass/test:Fixed/member\" AND +PATH:\"/cm:categoryContainer/cm:categoryRoot/test:region/test:Europe/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(2, results.length());
|
assertEquals(2, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:AssetClass/test:Equity/member\" PATH:\"/test:MarketingRegion/member\"", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/test:assetClass/test:Equity/member\" PATH:\"/test:marketingRegion/member\"", null, null);
|
||||||
//printPaths(results);
|
//printPaths(results);
|
||||||
assertEquals(9, results.length());
|
assertEquals(9, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
@ -585,11 +585,11 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
|
|
||||||
ResultSet
|
ResultSet
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass/*\" ", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass/*\" ", null, null);
|
||||||
assertEquals(3, results.length());
|
assertEquals(3, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:AssetClass/member\" ", null, null);
|
results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "PATH:\"/cm:categoryContainer/cm:categoryRoot/test:assetClass/member\" ", null, null);
|
||||||
assertEquals(1, results.length());
|
assertEquals(1, results.length());
|
||||||
results.close();
|
results.close();
|
||||||
|
|
||||||
@ -629,7 +629,7 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
assertEquals(2, result.size());
|
assertEquals(2, result.size());
|
||||||
|
|
||||||
|
|
||||||
result = impl.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.IMMEDIATE);
|
result = impl.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.IMMEDIATE);
|
||||||
assertEquals(2, result.size());
|
assertEquals(2, result.size());
|
||||||
|
|
||||||
|
|
||||||
@ -666,42 +666,42 @@ public class ADMLuceneCategoryTest extends TestCase
|
|||||||
assertEquals(3, categoryService.getChildren(catACBase , CategoryService.Mode.SUB_CATEGORIES, CategoryService.Depth.ANY).size());
|
assertEquals(3, categoryService.getChildren(catACBase , CategoryService.Mode.SUB_CATEGORIES, CategoryService.Depth.ANY).size());
|
||||||
assertEquals(17, categoryService.getChildren(catACBase , CategoryService.Mode.ALL, CategoryService.Depth.ANY).size());
|
assertEquals(17, categoryService.getChildren(catACBase , CategoryService.Mode.ALL, CategoryService.Depth.ANY).size());
|
||||||
assertEquals(2, categoryService.getClassifications(rootNodeRef.getStoreRef()).size());
|
assertEquals(2, categoryService.getClassifications(rootNodeRef.getStoreRef()).size());
|
||||||
assertEquals(2, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.IMMEDIATE).size());
|
assertEquals(2, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.IMMEDIATE).size());
|
||||||
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.ANY).size());
|
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.ANY).size());
|
||||||
assertEquals(7, categoryService.getClassificationAspects().size());
|
assertEquals(7, categoryService.getClassificationAspects().size());
|
||||||
assertEquals(2, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass")).size());
|
assertEquals(2, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass")).size());
|
||||||
|
|
||||||
NodeRef newRoot = categoryService.createRootCategory(rootNodeRef.getStoreRef(),QName.createQName(TEST_NAMESPACE, "AssetClass"), "Fruit");
|
NodeRef newRoot = categoryService.createRootCategory(rootNodeRef.getStoreRef(),QName.createQName(TEST_NAMESPACE, "assetClass"), "Fruit");
|
||||||
tx.commit();
|
tx.commit();
|
||||||
tx = transactionService.getUserTransaction();
|
tx = transactionService.getUserTransaction();
|
||||||
tx.begin();
|
tx.begin();
|
||||||
assertEquals(3, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass")).size());
|
assertEquals(3, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass")).size());
|
||||||
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.IMMEDIATE).size());
|
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.IMMEDIATE).size());
|
||||||
assertEquals(4, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.ANY).size());
|
assertEquals(4, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.ANY).size());
|
||||||
|
|
||||||
NodeRef newCat = categoryService.createCategory(newRoot, "Banana");
|
NodeRef newCat = categoryService.createCategory(newRoot, "Banana");
|
||||||
tx.commit();
|
tx.commit();
|
||||||
tx = transactionService.getUserTransaction();
|
tx = transactionService.getUserTransaction();
|
||||||
tx.begin();
|
tx.begin();
|
||||||
assertEquals(3, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass")).size());
|
assertEquals(3, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass")).size());
|
||||||
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.IMMEDIATE).size());
|
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.IMMEDIATE).size());
|
||||||
assertEquals(5, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.ANY).size());
|
assertEquals(5, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.ANY).size());
|
||||||
|
|
||||||
categoryService.deleteCategory(newCat);
|
categoryService.deleteCategory(newCat);
|
||||||
tx.commit();
|
tx.commit();
|
||||||
tx = transactionService.getUserTransaction();
|
tx = transactionService.getUserTransaction();
|
||||||
tx.begin();
|
tx.begin();
|
||||||
assertEquals(3, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass")).size());
|
assertEquals(3, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass")).size());
|
||||||
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.IMMEDIATE).size());
|
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.IMMEDIATE).size());
|
||||||
assertEquals(4, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.ANY).size());
|
assertEquals(4, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.ANY).size());
|
||||||
|
|
||||||
categoryService.deleteCategory(newRoot);
|
categoryService.deleteCategory(newRoot);
|
||||||
tx.commit();
|
tx.commit();
|
||||||
tx = transactionService.getUserTransaction();
|
tx = transactionService.getUserTransaction();
|
||||||
tx.begin();
|
tx.begin();
|
||||||
assertEquals(2, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass")).size());
|
assertEquals(2, categoryService.getRootCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass")).size());
|
||||||
assertEquals(2, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.IMMEDIATE).size());
|
assertEquals(2, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.IMMEDIATE).size());
|
||||||
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "AssetClass"), CategoryService.Depth.ANY).size());
|
assertEquals(3, categoryService.getCategories(rootNodeRef.getStoreRef(), QName.createQName(TEST_NAMESPACE, "assetClass"), CategoryService.Depth.ANY).size());
|
||||||
|
|
||||||
|
|
||||||
tx.rollback();
|
tx.rollback();
|
||||||
|
@ -128,12 +128,12 @@ public class AuthorityServiceTest extends TestCase
|
|||||||
authenticationComponent.setCurrentUser("admin");
|
authenticationComponent.setCurrentUser("admin");
|
||||||
assertTrue(authorityService.hasAdminAuthority());
|
assertTrue(authorityService.hasAdminAuthority());
|
||||||
assertTrue(pubAuthorityService.hasAdminAuthority());
|
assertTrue(pubAuthorityService.hasAdminAuthority());
|
||||||
// assertEquals(2, authorityService.getAuthorities().size());
|
assertEquals(3, authorityService.getAuthorities().size());
|
||||||
|
|
||||||
authenticationComponent.setCurrentUser("administrator");
|
authenticationComponent.setCurrentUser("administrator");
|
||||||
assertTrue(authorityService.hasAdminAuthority());
|
assertTrue(authorityService.hasAdminAuthority());
|
||||||
assertTrue(pubAuthorityService.hasAdminAuthority());
|
assertTrue(pubAuthorityService.hasAdminAuthority());
|
||||||
// assertEquals(2, authorityService.getAuthorities().size());
|
assertEquals(2, authorityService.getAuthorities().size());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testAuthorities()
|
public void testAuthorities()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user