Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.plumtree.remote.prc.content.security
Interface IFolderACL

public interface IFolderACL

Represents a folder's access control list (ACL) in Publisher. Any modifications to the `IFolderACL` metadata will not be stored permanently until `store` is called.

Method Summary
`void` | `addEntry(IFolderACLEntry entry)` Adds a `IFolderACLEntry` to this folder's ACL.
`void` | `addGroupEntry(int groupID, RoleType role)` Adds a `IFolderACLEntry` to this folder's ACL.
`void` | `addUserEntry(int userID, RoleType role)` Adds a `IFolderACLEntry` to this folder's ACL
`IFolder` | `getBelongingFolder()` Returns the folder associated with this `IFolderACL`.
`IFolderACLEntry[]` | `getEntries()` Returns an array of `IFolderACLEntry` objects that make up this FolderACL.
`IFolderACLEntry` | `getEntry(int objectID, MemberType type)` Returns an `IFolderACLEntry` corresponding to the given parameters.
`void` | `removeEntry(IFolderACLEntry entry)` Removes a specific `IFolderACLEntry`.
`void` | `removeGroupEntry(int groupID)` Removes a specific `IFolderACLEntry`.
`void` | `removeUserEntry(int userID)` Removes a specific `IFolderACLEntry`.
`void` | `store()` Stores the folder ACL.

Method Detail

### addEntry

    public void addEntry(IFolderACLEntry entry)

  Adds a `IFolderACLEntry` to this folder's ACL.

  Parameters:
    `entry` - the `IFolderACLEntry` to add to this folder's ACL
  Throws:
    `java.lang.IllegalArgumentException` - if the entry is invalid

### addGroupEntry

    public void addGroupEntry(int groupID,
                              RoleType role)

  Adds a `IFolderACLEntry` to this folder's ACL.

  Parameters:
    `groupID` - the portal group ID to be added to this `IFolderACL`
    `role` - the content server role for this group; must be of type `RoleType`
  Throws:
    `ContentSecurityException` - if the `IFolderACLEntry` does not exist on this `IFolderACL`
    `java.lang.IllegalArgumentException` - if the group id or role is invalid

### addUserEntry

    public void addUserEntry(int userID,
                             RoleType role)

  Adds a `IFolderACLEntry` to this folder's ACL

  Parameters:
    `userID` - the portal user ID to be added to this `IFolderACL`
    `role` - the Publisher role for this user; must be of type `RoleType`
  Throws:
    `ContentSecurityException` - if the `IFolderACLEntry` does not exist on this `IFolderACL`
    `java.lang.IllegalArgumentException` - if the user ID or role is invalid

### getBelongingFolder

    public IFolder getBelongingFolder()

  Returns the folder associated with this `IFolderACL`.

  Returns:
    the `IFolder`

### getEntries

    public IFolderACLEntry[] getEntries()

  Returns an array of `IFolderACLEntry` objects that make up this FolderACL.

  Returns:
    the `IFolderACLEntry`

### getEntry

    public IFolderACLEntry getEntry(int objectID,
                                    MemberType type)
                             throws ContentSecurityException

  Returns an `IFolderACLEntry` corresponding to the given parameters.

  Parameters:
    `objectID` - the portal object ID corresponding to the user or group entry being requested
    `type` - the `MemberType` of the entry
  Returns:
    the `IFolderACLEntry`
  Throws:
    `java.lang.IllegalArgumentException` - if the parameters are invalid
    `ContentSecurityException`

### removeEntry

    public void removeEntry(IFolderACLEntry entry)
                     throws ContentSecurityException

  Removes a specific `IFolderACLEntry`.

  Parameters:
    `entry` - the `IFolderACLEntry` to be removed from this ACL
  Throws:
    `ContentSecurityException` - if the `IFolderACLEntry` does not exist on this `IFolderACL`
    `java.lang.IllegalArgumentException` - if the entry is invalid

### removeGroupEntry

    public void removeGroupEntry(int groupID)
                          throws ContentSecurityException

  Removes a specific `IFolderACLEntry`.

  Parameters:
    `groupID` - the portal group ID to be removed from this `IFolderACL`
  Throws:
    `ContentSecurityException` - if the `IFolderACLEntry` does not exist on this `IFolderACL`
    `java.lang.IllegalArgumentException` - if the group ID is invalid

### removeUserEntry

    public void removeUserEntry(int userID)
                         throws ContentSecurityException

  Removes a specific `IFolderACLEntry`.

  Parameters:
    `userID` - the portal user ID to be removed from this `IFolderACL`
  Throws:
    `ContentSecurityException` - if the `IFolderACLEntry` does not exist on this `IFolderACL`
    `java.lang.IllegalArgumentException` - if the user ID is invalid

### store

    public void store()
               throws ContentSecurityException,
                      NameAlreadyInUseException,
                      ContentException,
                      java.rmi.RemoteException

  Stores the folder ACL. Modifications to the folder ACL will not be permanently stored until this method is called.

  Throws:
    `ContentSecurityException` - if the user does not have permission to create a folder in the parent folder
    `NameAlreadyInUseException` - if there is already a folder in the parent folder with the same name
    `ContentException` - if the an object ID was passed into the ACL that does not exist in as a portal user or group, or the method call resulted in a Publisher exception
    `java.rmi.RemoteException` - if there was a communication problem during the execution of the remote method call
    `java.lang.IllegalStateException` - if the folder has been removed, or its parent folder has been deleted or has not been stored, or there was an attempt to associate the folder with a portlet ID that was already associated with another folder

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

For additional information on the IDK, including tutorials, blogs, code samples and more, see the AquaLogic User Interaction Developer Center on BEA dev2dev.

Copyright ©2007 BEA Systems, Inc. All Rights Reserved.