Package org.jivesoftware.openfire.user
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 accommodate many enterprise integration needs).
-
Interface Summary Interface Description PresenceEventListener Interface to listen for presence events.UserNameProvider Interface to be implemented by components that are capable of returning the name of entities when running as internal components.UserProvider Provider interface for the user system.UserProviderMapper Implementations are used to determine what UserProvider is to be used for a particular username. -
Class Summary Class Description AuthorizationBasedUserProviderMapper AUserProviderMapper
that can be used to draw administrative users from another source than the regular, non- administrative users.DefaultUserProvider Default implementation of the UserProvider interface, which reads and writes data from theofUser
database table.HybridUserProvider Delegate UserProvider operations among up to three configurable provider implementation classes.JDBCUserProvider The JDBC user provider allows you to use an external database to define the users.MappedUserProvider AUserProvider
that delegates to a user-specific UserProvider.NativeUserProvider A UserProvider to be used in conjunction withNativeAuthProvider
, which authenticates using OS-level authentication.POP3UserProvider A UserProvider to be used in conjunction withPOP3AuthProvider
, which authenticates using a POP3 server.PresenceEventDispatcher Dispatches presence events.PropertyBasedUserProviderMapper AUserProviderMapper
that can be used to draw some users from another source than the other users.User Encapsulates information about a user.UserCollection Provides a view of an array of usernames as a Collection of User objects.UserManager Manages users, including loading, creating and deleting.UserMultiProvider AUserProvider
that delegates to one or more 'backing' UserProvider.UserNameManager Main responsibility of this class is to return the correct name of XMPP entities. -
Exception Summary Exception Description UserAlreadyExistsException Thrown when attempting to create a user that already exists.UserNotFoundException Thrown when User cannot be found.