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

## org.jivesoftware.openfire.group
Class DefaultGroupProvider

    java.lang.Object
      org.jivesoftware.openfire.group.DefaultGroupProvider

All Implemented Interfaces:
  GroupProvider

    public class DefaultGroupProvider

extends Object
implements GroupProvider

Database implementation of the GroupManager interface.

Author:
  Matt Tucker

Constructor Summary
`DefaultGroupProvider()`

Method Summary
`void` | `addMember(String groupName, org.xmpp.packet.JID user, boolean administrator)` Adds an entity to a group (optional operation).
`Group` | `createGroup(String name)` Creates a group with the given name (optional operation).
`void` | `deleteGroup(String groupName)` Deletes the group (optional operation).
`void` | `deleteMember(String groupName, org.xmpp.packet.JID user)` Deletes an entity from a group (optional operation).
`Group` | `getGroup(String name)` Returns a group based on it's name.
`int` | `getGroupCount()` Returns the number of groups in the system.
`Collection<String>` | `getGroupNames()` Returns the Collection of all group names in the system.
`Collection<String>` | `getGroupNames(int startIndex, int numResults)` Returns the Collection of all groups in the system.
`Collection<String>` | `getGroupNames(org.xmpp.packet.JID user)` Returns the Collection of group names that an entity belongs to.
`Collection<String>` | `getSharedGroupsNames()` Returns an unmodifiable Collection of all shared groups in the system.
`boolean` | `isReadOnly()` Returns true if this GroupProvider is read-only.
`boolean` | `isSearchSupported()` Returns true if group searching is supported by the provider.
`Collection<String>` | `search(String query)` Returns the group names that match a search.
`Collection<String>` | `search(String query, int startIndex, int numResults)` Returns the group names that match a search given a start index and desired number of results.
`void` | `setDescription(String name, String description)` Updates the group's description.
`void` | `setName(String oldName, String newName)` Sets the name of a group to a new name.
`void` | `updateMember(String groupName, org.xmpp.packet.JID user, boolean administrator)` Updates the privileges of an entity in a group.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DefaultGroupProvider

    public DefaultGroupProvider()

Method Detail

### createGroup

    public Group createGroup(String name)
                      throws GroupAlreadyExistsException

  Description copied from interface: `GroupProvider`
  Creates a group with the given name (optional operation).

  The provider is responsible for setting the creation date and modification date to the current date/time.

  Specified by:
    `createGroup` in interface `GroupProvider`
  Parameters:
    `name` - name of the group.
  Returns:
    the newly created group.
  Throws:
    `GroupAlreadyExistsException` - if a group with the same name already exists.

### getGroup

    public Group getGroup(String name)
                   throws GroupNotFoundException

  Description copied from interface: `GroupProvider`
  Returns a group based on it's name.

  Specified by:
    `getGroup` in interface `GroupProvider`
  Parameters:
    `name` - the name of the group.
  Returns:
    the group with the given name.
  Throws:
    `GroupNotFoundException` - If no group with that ID could be found

### setDescription

    public void setDescription(String name,
                               String description)
                        throws GroupNotFoundException

  Description copied from interface: `GroupProvider`
  Updates the group's description.

  Specified by:
    `setDescription` in interface `GroupProvider`
  Parameters:
    `name` - the group name.
    `description` - the group description.
  Throws:
    `GroupNotFoundException` - if no existing group could be found to update.

### setName

    public void setName(String oldName,
                        String newName)
                 throws UnsupportedOperationException,
                        GroupAlreadyExistsException

  Description copied from interface: `GroupProvider`
  Sets the name of a group to a new name.

  Specified by:
    `setName` in interface `GroupProvider`
  Parameters:
    `oldName` - the current name of the group.
    `newName` - the desired new name of the group.
  Throws:
    `UnsupportedOperationException` - if the provider does not support the operation.
    `GroupAlreadyExistsException` - if a group with the same name already exists.

### deleteGroup

    public void deleteGroup(String groupName)

  Description copied from interface: `GroupProvider`
  Deletes the group (optional operation).

  Specified by:
    `deleteGroup` in interface `GroupProvider`
  Parameters:
    `groupName` - the name of the group to delete.

### getGroupCount

    public int getGroupCount()

  Description copied from interface: `GroupProvider`
  Returns the number of groups in the system.

  Specified by:
    `getGroupCount` in interface `GroupProvider`
  Returns:
    the number of groups in the system.

### getSharedGroupsNames

    public Collection<String> getSharedGroupsNames()

  Description copied from interface: `GroupProvider`
  Returns an unmodifiable Collection of all shared groups in the system.

  Specified by:
    `getSharedGroupsNames` in interface `GroupProvider`
  Returns:
    unmodifiable Collection of all shared groups in the system.

### getGroupNames

    public Collection<String> getGroupNames()

  Description copied from interface: `GroupProvider`
  Returns the Collection of all group names in the system.

  Specified by:
    `getGroupNames` in interface `GroupProvider`
  Returns:
    the Collection of all groups.

### getGroupNames

    public Collection<String> getGroupNames(int startIndex,
                                            int numResults)

  Description copied from interface: `GroupProvider`
  Returns the Collection of all groups in the system.

  Specified by:
    `getGroupNames` in interface `GroupProvider`
  Parameters:
    `startIndex` - start index in results.
    `numResults` - number of results to return.
  Returns:
    the Collection of all group names given the `startIndex` and `numResults`.

### getGroupNames

    public Collection<String> getGroupNames(org.xmpp.packet.JID user)

  Description copied from interface: `GroupProvider`
  Returns the Collection of group names that an entity belongs to.

  Specified by:
    `getGroupNames` in interface `GroupProvider`
  Parameters:
    `user` - the JID of the entity.
  Returns:
    the Collection of group names that the user belongs to.

### addMember

    public void addMember(String groupName,
                          org.xmpp.packet.JID user,
                          boolean administrator)

  Description copied from interface: `GroupProvider`
  Adds an entity to a group (optional operation).

  Specified by:
    `addMember` in interface `GroupProvider`
  Parameters:
    `groupName` - the group to add the member to
    `user` - the JID of the entity to add
    `administrator` - True if the member is an administrator of the group

### updateMember

    public void updateMember(String groupName,
                             org.xmpp.packet.JID user,
                             boolean administrator)

  Description copied from interface: `GroupProvider`
  Updates the privileges of an entity in a group.

  Specified by:
    `updateMember` in interface `GroupProvider`
  Parameters:
    `groupName` - the group where the change happened
    `user` - the JID of the entity with new privileges
    `administrator` - True if the member is an administrator of the group

### deleteMember

    public void deleteMember(String groupName,
                             org.xmpp.packet.JID user)

  Description copied from interface: `GroupProvider`
  Deletes an entity from a group (optional operation).

  Specified by:
    `deleteMember` in interface `GroupProvider`
  Parameters:
    `groupName` - the group name.
    `user` - the JID of the entity to delete.

### isReadOnly

    public boolean isReadOnly()

  Description copied from interface: `GroupProvider`
  Returns true if this GroupProvider is read-only. When read-only, groups can not be created, deleted, or modified.

  Specified by:
    `isReadOnly` in interface `GroupProvider`
  Returns:
    true if the user provider is read-only.

### search

    public Collection<String> search(String query)

  Description copied from interface: `GroupProvider`
  Returns the group names that match a search. The search is over group names and implicitly uses wildcard matching (although the exact search semantics are left up to each provider implementation). For example, a search for "HR" should match the groups "HR", "HR Department", and "The HR People".

  Before searching or showing a search UI, use the `GroupProvider.isSearchSupported()` method to ensure that searching is supported.

  Specified by:
    `search` in interface `GroupProvider`
  Parameters:
    `query` - the search string for group names.
  Returns:
    all groups that match the search.

### search

    public Collection<String> search(String query,
                                     int startIndex,
                                     int numResults)

  Description copied from interface: `GroupProvider`
  Returns the group names that match a search given a start index and desired number of results. The search is over group names and implicitly uses wildcard matching (although the exact search semantics are left up to each provider implementation). For example, a search for "HR" should match the groups "HR", "HR Department", and "The HR People".

  Before searching or showing a search UI, use the `GroupProvider.isSearchSupported()` method to ensure that searching is supported.

  Specified by:
    `search` in interface `GroupProvider`
  Parameters:
    `query` - the search string for group names.
    `startIndex` - start index in results.
    `numResults` - number of results to return.
  Returns:
    all groups that match the search.

### isSearchSupported

    public boolean isSearchSupported()

  Description copied from interface: `GroupProvider`
  Returns true if group searching is supported by the provider.

  Specified by:
    `isSearchSupported` in interface `GroupProvider`
  Returns:
    true if searching is supported.

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

Copyright © 2003-2008 Jive Software.