Another pair of convenience methods for AttributeService:

removeEntries, which removes map entries by query.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5806 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2007-05-29 19:17:04 +00:00
parent aa046ff09b
commit 0ea69ac954
9 changed files with 127 additions and 2 deletions

View File

@@ -420,6 +420,44 @@ public class AttributeServiceImpl implements AttributeService
removeAttribute(keys, index);
}
/* (non-Javadoc)
* @see org.alfresco.service.cmr.attributes.AttributeService#removeEntries(java.util.List, org.alfresco.service.cmr.attributes.AttrQuery)
*/
public void removeEntries(List<String> keys, AttrQuery query)
{
if (keys == null || query == null)
{
throw new AVMBadArgumentException("Illegal null argument.");
}
if (keys.size() == 0)
{
throw new AVMBadArgumentException("Illegal zero length key path.");
}
Attribute map = getAttributeFromPath(keys);
if (map == null)
{
throw new AVMNotFoundException("Could not find attribute: " + keys);
}
if (map.getType() != Attribute.Type.MAP)
{
throw new AVMWrongTypeException("Not a map: " + keys);
}
fAttributeDAO.delete((MapAttribute)map, query);
}
/* (non-Javadoc)
* @see org.alfresco.service.cmr.attributes.AttributeService#removeEntries(java.lang.String, org.alfresco.service.cmr.attributes.AttrQuery)
*/
public void removeEntries(String path, AttrQuery query)
{
if (path == null || query == null)
{
throw new AVMBadArgumentException("Illegal null argument.");
}
List<String> keys = parsePath(path);
removeEntries(keys, query);
}
/* (non-Javadoc)
* @see org.alfresco.service.cmr.attributes.AttributeService#setAttribute(java.util.List, int, org.alfresco.repo.attributes.Attribute)
*/