Package org.springframework.security.acls.model

# Interface MutableAclService

All Superinterfaces:
  `AclService`

All Known Implementing Classes:
  `JdbcMutableAclService`

public interface MutableAclService extends AclService
Provides support for creating and storing `Acl` instances.

## Method Summary

Modifier and Type
Method
Description
`MutableAcl`
`createAcl(ObjectIdentity objectIdentity)`
Creates an empty `Acl` object in the database.
`void`
`deleteAcl(ObjectIdentity objectIdentity, boolean deleteChildren)`
Removes the specified entry from the database.
`MutableAcl`
`updateAcl(MutableAcl acl)`
Changes an existing `Acl` in the database.

### Methods inherited from interface org.springframework.security.acls.model.AclService

`findChildren, readAclById, readAclById, readAclsById, readAclsById`

## Method Details

### createAcl

MutableAcl createAcl(ObjectIdentity objectIdentity) throws AlreadyExistsException
Creates an empty `Acl` object in the database. It will have no entries. The returned object will then be used to add entries.

Parameters:
  `objectIdentity` - the object identity to create
Returns:
  an ACL object with its ID set
Throws:
  `AlreadyExistsException` - if the passed object identity already has a record

### deleteAcl

void deleteAcl(ObjectIdentity objectIdentity, boolean deleteChildren) throws ChildrenExistException
Removes the specified entry from the database.

Parameters:
  `objectIdentity` - the object identity to remove
  `deleteChildren` - whether to cascade the delete to children
Throws:
  `ChildrenExistException` - if the deleteChildren argument was `false` but children exist

### updateAcl

MutableAcl updateAcl(MutableAcl acl) throws NotFoundException
Changes an existing `Acl` in the database.

Parameters:
  `acl` - to modify
Throws:
  `NotFoundException` - if the relevant record could not be found (did you remember to use `createAcl(ObjectIdentity)` to create the object, rather than creating it with the `new` keyword?)