Provides the interfaces and classes necessary to create custom user account data providers for Openfire.
User accounts are handled separately from authentication. The three primary interfaces to implement are the UserIDProvider, UserAccountProvider, and UserInfoProvider. An overview of how these providers should be implemented and how they interact is described in the User Account Provider Guide included in the Openfire distribution.
There are several Roster (a.k.a. Buddy List) related classes in the user package. Developers are strongly discouraged from implementing custom RosterProvider classes. Roster provider implementation is complicated and should be left to the Jive JDBC implementation if at all possible. There are no disadvantages in implementing user account data with custom providers to integrate Openfire with a CRM or ERP user system, while leaving roster storage in Jive's standard JDBC database tables. (Note: Openfire comes with JDBC and LDAP user account providers 'out of the box'. It is expected that LDAP will accomodate many enterprise integration needs).
Interface Summary Interface Description PresenceEventListenerInterface to listen for presence events. UserNameProviderInterface to be implemented by components that are capable of returning the name of entities when running as internal components. UserProviderProvider interface for the user system. UserProviderMapperImplementations are used to determine what UserProvider is to be used for a particular username.
Class Summary Class Description AuthorizationBasedUserProviderMapperA
UserProviderMapperthat can be used to draw administrative users from another source than the regular, non- administrative users.
DefaultUserProviderDefault implementation of the UserProvider interface, which reads and writes data from the
HybridUserProviderDelegate UserProvider operations among up to three configurable provider implementation classes. JDBCUserProviderThe JDBC user provider allows you to use an external database to define the users. MappedUserProviderA
UserProviderthat delegates to a user-specific UserProvider.
NativeUserProviderA UserProvider to be used in conjunction with
NativeAuthProvider, which authenticates using OS-level authentication.
POP3UserProviderA UserProvider to be used in conjunction with
POP3AuthProvider, which authenticates using a POP3 server.
PresenceEventDispatcherDispatches presence events. PropertyBasedUserProviderMapperA
UserProviderMapperthat can be used to draw some users from another source than the other users.
UserEncapsulates information about a user. UserCollectionProvides a view of an array of usernames as a Collection of User objects. UserManagerManages users, including loading, creating and deleting. UserMultiProviderA
UserProviderthat delegates to one or more 'backing' UserProvider.
UserNameManagerMain responsibility of this class is to return the correct name of XMPP entities.
Exception Summary Exception Description UserAlreadyExistsExceptionThrown when attempting to create a user that already exists. UserNotFoundExceptionThrown when User cannot be found.