Is this topic still fresh enough? Small example for a space indicated by "path", given a store.
setAccessControlList(Store store, String path,
boolean inheritPermissions, Hashtable<String, String> accessControl)
accessControlService = WebServiceFactory.getAccessControlService();
Reference ref = new Reference(store, null, getXPathEscape(path));
Predicate predicate = new Predicate(new Reference[] { ref }, store, null);
ACE[] aces = new ACE[accessControl.size()];
// remove existing …
accessControlService.removeACEs(predicate, null);
accessControlService.addACEs(predicate, aces);
accessControlService.setInheritPermission(predicate, inheritPermissions);