Jive Forums API (5.5.20.2-oracle) Developer Javadocs

com.jivesoftware.forum.proxy
Class ForumFactoryProxy

java.lang.Object
  extended by com.jivesoftware.forum.ForumFactory
      extended by com.jivesoftware.forum.proxy.ForumFactoryProxy

public class ForumFactoryProxy
extends ForumFactory

A protection proxy for ForumFactory. It ensures that only authorized users are allowed to access restricted methods.


Field Summary
protected  AuthToken authToken
           
protected  ForumFactory factory
           
protected  Permissions permissions
           
 
Constructor Summary
ForumFactoryProxy(AuthToken authToken, ForumFactory factory, Permissions permissions)
           
 
Method Summary
 Forum createForum(java.lang.String name, java.lang.String description)
          Creates a new forum.
 Forum createForum(java.lang.String name, java.lang.String description, ForumCategory category)
          Creates a new forum in the specified category.
 Query createQuery()
          Creates a query object to search through all forums.
 Query createQuery(Forum[] forums)
          Creates a query object to search through the specified list of forums.
 void deleteForum(Forum forum)
          Deletes a forum and all of its content.
 AbuseManager getAbuseManager()
          Returns an abuse manager that can be used for managing abuse reports
 AnnouncementManager getAnnouncementManager()
          Returns an announcement manager, which is used to create and retrieve announcements.
 ArchiveManager getArchiveManager()
          Returns an archive manager that can be used to manage archiving for forums.
 AttachmentManager getAttachmentManager()
          Returns an attachment manager that can be used to manage attachment rules.
 AvatarManager getAvatarManager()
          Returns a AvatarManager that can be used to find, create, delete, and make avatars active
 BanManager getBanManager()
          Returns a ban manager that can be used for banning users
 DraftManager getDraftManager()
          Returns a DraftManager that can be used to manager message drafts.
 EmailManager getEmailManager()
          Returns an EmailManager that can be used for sending out emails
 Forum getForum(long forumID)
          Returns the forum with the specified forumID.
 Forum getForum(java.lang.String nntpName)
          Returns the forum with the specified NNTP name.
 ForumCategory getForumCategory(long categoryID)
          Returns the forum category with the specified categoryID.
 int getForumCount()
          Returns the total number of forums in the system.
 int getForumCount(ResultFilter resultFilter)
          Returns the total number of forums in the system matching the ResultFilter.
 java.util.Iterator getForums()
          Returns all forums in the system that the user has read permission for.
 java.util.Iterator getForums(ResultFilter resultFilter)
          Returns all forums in the system that the user has read permission for and that matche the specified ResultFilter.
 ForumThread getForumThread(long threadID)
          Returns the thread with the specified threadID.
 GatewayManager getGatewayManager()
          Returns a gateway manager that can be used for managing gateways
 GroupManager getGroupManager()
          Returns a GroupManager that can be used to manage groups.
 InterceptorManager getInterceptorManager()
          Returns a message interceptor manager that can be used to manage global interceptors.
 ForumMessage getMessage(long messageID)
          Returns the forum message with the specified messageID.
 long getMessageID(long forumID, int forumIndex)
          Returns the message ID with the specified forumID and forumIndex, or -1 if the forumIndex does not map to a message.
 ModerationManager getModerationManager()
          Returns a moderation manager that can be used for moderating messages
 Permissions getPermissions(AuthToken authToken)
          Returns the permissions for the factory that correspond to the passed-in Authorization.
 PermissionsManager getPermissionsManager()
          Returns a permissions manager that can be used to set system wide permissions.
 PluginManager getPluginManager()
          Returns an instance of PluginManager that can be used for acquiring plugin instances.
 PollManager getPollManager()
          Returns a poll manager that can be used to retrieve and manager polls.
 java.util.Iterator getPopularForums()
          Returns an Iterator for the most popular forums in the system as Forum objects.
 java.util.Iterator getPopularThreads()
          Returns an Iterator for the most threads in the system as ForumThread objects.
 PresenceManager getPresenceManager()
          Returns a presence manager that can be used to retrieve and manage presences.
 PrivateMessageManager getPrivateMessageManager()
          Returns a private message manager, which controls private message settings.
 QueryManager getQueryManager()
          Returns a query manager that can be used to retrieve and manage search queries.
 com.jivesoftware.forum.QuestionManager getQuestionManager()
          Returns a QuestionManager, which can be used to manage Questions.
 ReadTracker getReadTracker()
          Returns a read tracker that can be used to track which threads and messages a user has read.
 RegistrationManager getRegistrationManager()
          Returns a validation manager that can be used for validating user accounts
 RenderManager getRenderManager()
          Returns a render manager that can be used to manage system wide render filters and macros.
 RewardManager getRewardManager()
          Returns a reward manager that can be used to manage reward points.
 ForumCategory getRootForumCategory()
          Returns the "root" forum category, that all other categories are children of.
 SearchManager getSearchManager()
          Returns the search manger which can be used to manage the index used by Jive to perform searches.
 StatusLevelManager getStatusLevelManager()
          Returns a StatusLevelManager that can be used to check a user status level, find leaders system wide, or by forum/category.
 TagManager getTagManager()
          Returns a tag manager that can be used for managing tags
 UserManager getUserManager()
          Returns a UserManager that can be used to manage users.
 int getUserMessageCount(User user)
          Returns the total number of messages a user has posted in all forums.
 int getUserMessageCount(User user, ResultFilter resultFilter)
          Returns the total number of messages a user has posted in all forums that obey the parameters set by the specificed ResultFilter.
 java.util.Iterator getUserMessages(User user)
          Returns an iterator for all messages posted by a user.
 java.util.Iterator getUserMessages(User user, ResultFilter resultFilter)
          Returns an iterator for all messages posted by a user that obey the parameters set by the specified ResultFilter.
 WatchManager getWatchManager()
          Returns a watch manager that can be used to manage watches.
 WatchSettingsManager getWatchSettingsManager()
          Returns a watch settings manager that can be used to manage watch settings.
 boolean isAuthorized(long type)
          Returns true if the handle on the object has the permission specified.
 void mergeForums(Forum forum1, Forum forum2)
          Merges the content of two forums by copying the threads from forum2 to forum1.
 
Methods inherited from class com.jivesoftware.forum.ForumFactory
getInstance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

factory

protected ForumFactory factory

authToken

protected AuthToken authToken

permissions

protected Permissions permissions
Constructor Detail

ForumFactoryProxy

public ForumFactoryProxy(AuthToken authToken,
                         ForumFactory factory,
                         Permissions permissions)
Method Detail

createForum

public Forum createForum(java.lang.String name,
                         java.lang.String description)
                  throws UnauthorizedException
Description copied from class: ForumFactory
Creates a new forum.

Specified by:
createForum in class ForumFactory
Parameters:
name - the name of the forum.
description - the description of the forum.
Throws:
UnauthorizedException - if not allowed to create a Forum.

createForum

public Forum createForum(java.lang.String name,
                         java.lang.String description,
                         ForumCategory category)
                  throws UnauthorizedException
Description copied from class: ForumFactory
Creates a new forum in the specified category.

Specified by:
createForum in class ForumFactory
Parameters:
name - the name of the forum.
description - the description of the forum.
Throws:
UnauthorizedException - if not allowed to create a Forum.

deleteForum

public void deleteForum(Forum forum)
                 throws UnauthorizedException
Description copied from class: ForumFactory
Deletes a forum and all of its content.

This method is not always guaranteed to be safe to call. For example, if multiple clients have handles on a forum, and that forum is subsequently deleted, the behavior of the forum objects that the clients have handles on is unspecified and may result in errors.

Specified by:
deleteForum in class ForumFactory
Parameters:
forum - the forum to delete.
Throws:
UnauthorizedException - if not allowed to delete a forum.

mergeForums

public void mergeForums(Forum forum1,
                        Forum forum2)
                 throws UnauthorizedException
Description copied from class: ForumFactory
Merges the content of two forums by copying the threads from forum2 to forum1. forum2 will be deleted after all content is merged.

You may only execute this operation if you are a system administrator.

Specified by:
mergeForums in class ForumFactory
Parameters:
forum1 - the Forum to merge threads into.
forum2 - the Forum to move all threads from.
Throws:
UnauthorizedException

getForumCategory

public ForumCategory getForumCategory(long categoryID)
                               throws ForumCategoryNotFoundException
Description copied from class: ForumFactory
Returns the forum category with the specified categoryID.

Specified by:
getForumCategory in class ForumFactory
Parameters:
categoryID - the id of the forum category to return.
Returns:
the ForumCategory specified by categoryID.
Throws:
ForumCategoryNotFoundException - if the requested category does not exist.

getRootForumCategory

public ForumCategory getRootForumCategory()
Description copied from class: ForumFactory
Returns the "root" forum category, that all other categories are children of. The root category can never be deleted, so there isn't a possibility of it not being found.

Specified by:
getRootForumCategory in class ForumFactory
Returns:
the root forum category.

getForum

public Forum getForum(long forumID)
               throws ForumNotFoundException,
                      UnauthorizedException
Description copied from class: ForumFactory
Returns the forum with the specified forumID.

Specified by:
getForum in class ForumFactory
Parameters:
forumID - the id of the forum to return.
Returns:
the forum specified by forumID.
Throws:
ForumNotFoundException - if the requested forum does not exist.
UnauthorizedException - if not allowed to read the forum.

getForum

public Forum getForum(java.lang.String nntpName)
               throws ForumNotFoundException,
                      UnauthorizedException
Description copied from class: ForumFactory
Returns the forum with the specified NNTP name.

Specified by:
getForum in class ForumFactory
Parameters:
nntpName - the NNTP Name of the forum to return.
Returns:
the forum.
Throws:
ForumNotFoundException - if the requested forum does not exist.
UnauthorizedException - if not allowed to read the forum.

getForumThread

public ForumThread getForumThread(long threadID)
                           throws ForumThreadNotFoundException,
                                  UnauthorizedException
Description copied from class: ForumFactory
Returns the thread with the specified threadID.

Specified by:
getForumThread in class ForumFactory
Parameters:
threadID - the id of the thread to return.
Returns:
the ForumThread specified by threadID.
Throws:
ForumThreadNotFoundException - if the requested thread does not exist.
UnauthorizedException - if not allowed to read the thread.

getMessage

public ForumMessage getMessage(long messageID)
                        throws ForumMessageNotFoundException,
                               UnauthorizedException
Description copied from class: ForumFactory
Returns the forum message with the specified messageID.

Specified by:
getMessage in class ForumFactory
Parameters:
messageID - the id of the message to return.
Returns:
the ForumMessage specified by messageID.
Throws:
ForumMessageNotFoundException - if the requested message does not exist.
UnauthorizedException - if not allowed to read the message.

getMessageID

public long getMessageID(long forumID,
                         int forumIndex)
Description copied from class: ForumFactory
Returns the message ID with the specified forumID and forumIndex, or -1 if the forumIndex does not map to a message.

Specified by:
getMessageID in class ForumFactory
Parameters:
forumID - the forum ID of the message.
forumIndex - the forum index value of the message.
Returns:
the message ID, or -1 if the specified forumIndex is invalid.

getForumCount

public int getForumCount()
Description copied from class: ForumFactory
Returns the total number of forums in the system. This number might not agree with the number of forums returned by ForumFactory.forums() since that method return an Iterator of forums that a user has read permission for.

Specified by:
getForumCount in class ForumFactory
Returns:
the total number of forums.

getForumCount

public int getForumCount(ResultFilter resultFilter)
Description copied from class: ForumFactory
Returns the total number of forums in the system matching the ResultFilter. This number might not agree with the number of forums returned by ForumFactory.forums(ResultFilter) since that method return an Iterator of forums that a user has read permission for.

Specified by:
getForumCount in class ForumFactory
Parameters:
resultFilter - a ResultFilter used to filter the result.
Returns:
the total number of forums.

getForums

public java.util.Iterator getForums()
Description copied from class: ForumFactory
Returns all forums in the system that the user has read permission for. Read access can be granted in the following ways:

Specified by:
getForums in class ForumFactory
Returns:
an Iterator of Forum objects for all forums in the system that the user has read permission for.
See Also:
ForumCategory.getRecursiveForums()

getForums

public java.util.Iterator getForums(ResultFilter resultFilter)
Description copied from class: ForumFactory
Returns all forums in the system that the user has read permission for and that matche the specified ResultFilter.

Specified by:
getForums in class ForumFactory
Parameters:
resultFilter - a ResultFilter object to perform filtering and sorting with.
Returns:
an Iterator for the forums in the system that the user can read and that match the ResultFilter.
See Also:
ForumCategory.getRecursiveForums(ResultFilter)

createQuery

public Query createQuery()
Description copied from class: ForumFactory
Creates a query object to search through all forums. Note: only forums that the user calling this method has read access for will be included in the search.

Specified by:
createQuery in class ForumFactory
Returns:
a Query object that can be used to search all forums.

createQuery

public Query createQuery(Forum[] forums)
Description copied from class: ForumFactory
Creates a query object to search through the specified list of forums.

Specified by:
createQuery in class ForumFactory
Returns:
a Query object that can be used to search the specified forums.

getPopularForums

public java.util.Iterator getPopularForums()
Description copied from class: ForumFactory
Returns an Iterator for the most popular forums in the system as Forum objects. Popular forums are defined as those that have the most new messages over a period of time (e.g. the last 24 hours).

A number of configurable Jive properties control how the popular forums feature works:

Specified by:
getPopularForums in class ForumFactory
Returns:
an Iterator of Forum objects for the most popular forums.

getPopularThreads

public java.util.Iterator getPopularThreads()
Description copied from class: ForumFactory
Returns an Iterator for the most threads in the system as ForumThread objects. Popular threads are defined as those that have the most new messages over a period of time (e.g. the last 24 hours).

A number of configurable Jive properties control how the popular threads feature works:

Specified by:
getPopularThreads in class ForumFactory
Returns:
an Iterator of ForumThread objects for the most popular forums.

getUserMessageCount

public int getUserMessageCount(User user)
Description copied from class: ForumFactory
Returns the total number of messages a user has posted in all forums. Warning: forums that the current user doesn't have read access for will also be included in the total, so you should use caution if that information should be private.

In order to get a count of user messages in an individual forum, use the Forum.getMessageCount(ResultFilter) method.

Specified by:
getUserMessageCount in class ForumFactory
Parameters:
user - the user to tally results for.
Returns:
the number of messages the user has posted.

getUserMessageCount

public int getUserMessageCount(User user,
                               ResultFilter resultFilter)
Description copied from class: ForumFactory
Returns the total number of messages a user has posted in all forums that obey the parameters set by the specificed ResultFilter. Warning: forums that the current user doesn't have read access for will also be included in the total, so you should use caution if that information should be private.

In order to get a count of user messages in an individual forum, use the Forum.getMessageCount(ResultFilter) method.

Specified by:
getUserMessageCount in class ForumFactory
Parameters:
user - the user to tally results for.
resultFilter - a resultFilter to limit the query on.
Returns:
the number of messages the user has posted.

getUserMessages

public java.util.Iterator getUserMessages(User user)
Description copied from class: ForumFactory
Returns an iterator for all messages posted by a user. Only messages that the caller of this method has permission to read will be returned. Therefore, it's possible that the number of messages returned in this iterator will be less than the number returned by userMessageCount(user).

Specified by:
getUserMessages in class ForumFactory
Parameters:
user - the user to get messages for.

getUserMessages

public java.util.Iterator getUserMessages(User user,
                                          ResultFilter resultFilter)
Description copied from class: ForumFactory
Returns an iterator for all messages posted by a user that obey the parameters set by the specified ResultFilter. Only messages that the caller of this method has permission to read will be returned. Therefore, it's possible that the number of messages returned in this iterator will be less than the number returned by userMessageCount(user).

Specified by:
getUserMessages in class ForumFactory
Parameters:
user - the user to get messages for.
resultFilter - a resultFilter to limit the query on.
Returns:
an Iterator for all users in the specified range.

getUserManager

public UserManager getUserManager()
Description copied from class: ForumFactory
Returns a UserManager that can be used to manage users.

Specified by:
getUserManager in class ForumFactory
Returns:
a user manager.
See Also:
UserManager

getGroupManager

public GroupManager getGroupManager()
Description copied from class: ForumFactory
Returns a GroupManager that can be used to manage groups.

Specified by:
getGroupManager in class ForumFactory
Returns:
a group manager.
See Also:
GroupManager

getSearchManager

public SearchManager getSearchManager()
                               throws UnauthorizedException
Description copied from class: ForumFactory
Returns the search manger which can be used to manage the index used by Jive to perform searches.

Specified by:
getSearchManager in class ForumFactory
Returns:
a search manager.
Throws:
UnauthorizedException - if not a system administator.

getInterceptorManager

public InterceptorManager getInterceptorManager()
                                         throws UnauthorizedException
Description copied from class: ForumFactory
Returns a message interceptor manager that can be used to manage global interceptors.

Specified by:
getInterceptorManager in class ForumFactory
Returns:
a InterceptorManager to manage global interceptors.
Throws:
UnauthorizedException - if not a system administrator.

getWatchManager

public WatchManager getWatchManager()
Description copied from class: ForumFactory
Returns a watch manager that can be used to manage watches.

Specified by:
getWatchManager in class ForumFactory
Returns:
a WatchManager to manage watches.

getWatchSettingsManager

public WatchSettingsManager getWatchSettingsManager()
Description copied from class: ForumFactory
Returns a watch settings manager that can be used to manage watch settings.

Specified by:
getWatchSettingsManager in class ForumFactory
Returns:
a WatchManager to manage watch settings.

getRewardManager

public RewardManager getRewardManager()
Description copied from class: ForumFactory
Returns a reward manager that can be used to manage reward points.

Specified by:
getRewardManager in class ForumFactory
Returns:
a RewardManager to manage reward points.

getAttachmentManager

public AttachmentManager getAttachmentManager()
Description copied from class: ForumFactory
Returns an attachment manager that can be used to manage attachment rules.

Specified by:
getAttachmentManager in class ForumFactory
Returns:
a AttachmentManager to manage attachment rules.

getArchiveManager

public ArchiveManager getArchiveManager()
Description copied from class: ForumFactory
Returns an archive manager that can be used to manage archiving for forums.

Specified by:
getArchiveManager in class ForumFactory
Returns:
an ArchiveManager instance.

getStatusLevelManager

public StatusLevelManager getStatusLevelManager()
Description copied from class: ForumFactory
Returns a StatusLevelManager that can be used to check a user status level, find leaders system wide, or by forum/category. System administrators will also be allowed to manage status levels.

Specified by:
getStatusLevelManager in class ForumFactory
Returns:
an instance of the status level manager

getAvatarManager

public AvatarManager getAvatarManager()
Description copied from class: ForumFactory
Returns a AvatarManager that can be used to find, create, delete, and make avatars active

Specified by:
getAvatarManager in class ForumFactory
Returns:
an instance of the avatar manager

getPresenceManager

public PresenceManager getPresenceManager()
Description copied from class: ForumFactory
Returns a presence manager that can be used to retrieve and manage presences.

Specified by:
getPresenceManager in class ForumFactory
Returns:
a PresenceManager.
See Also:
PresenceManager

getReadTracker

public ReadTracker getReadTracker()
Description copied from class: ForumFactory
Returns a read tracker that can be used to track which threads and messages a user has read.

Specified by:
getReadTracker in class ForumFactory
Returns:
a ReadTracker instance.

getDraftManager

public DraftManager getDraftManager()
Description copied from class: ForumFactory
Returns a DraftManager that can be used to manager message drafts.

Specified by:
getDraftManager in class ForumFactory
Returns:
a DraftManager to manage message drafts.

getPollManager

public PollManager getPollManager()
Description copied from class: ForumFactory
Returns a poll manager that can be used to retrieve and manager polls.

Specified by:
getPollManager in class ForumFactory
Returns:
a PollManager instance.

getPrivateMessageManager

public PrivateMessageManager getPrivateMessageManager()
Description copied from class: ForumFactory
Returns a private message manager, which controls private message settings.

Specified by:
getPrivateMessageManager in class ForumFactory
Returns:
a PrivateMessageManager instance.

getQuestionManager

public com.jivesoftware.forum.QuestionManager getQuestionManager()
Description copied from class: ForumFactory
Returns a QuestionManager, which can be used to manage Questions. This feature is only available in Gold Edition.

Specified by:
getQuestionManager in class ForumFactory
Returns:
a QuestionManager instance.

getAnnouncementManager

public AnnouncementManager getAnnouncementManager()
Description copied from class: ForumFactory
Returns an announcement manager, which is used to create and retrieve announcements.

Specified by:
getAnnouncementManager in class ForumFactory
Returns:
an AnnouncementManager instance.

getPermissionsManager

public PermissionsManager getPermissionsManager()
                                         throws UnauthorizedException
Description copied from class: ForumFactory
Returns a permissions manager that can be used to set system wide permissions. Only system admins can perform this function.

Specified by:
getPermissionsManager in class ForumFactory
Returns:
a PermissionsManager to manage the system permissions.
Throws:
UnauthorizedException - if not a system admin.

getQueryManager

public QueryManager getQueryManager()
Description copied from class: ForumFactory
Returns a query manager that can be used to retrieve and manage search queries.

Specified by:
getQueryManager in class ForumFactory
Returns:
a QueryManager
See Also:
QueryManager

getPermissions

public Permissions getPermissions(AuthToken authToken)
Description copied from class: ForumFactory
Returns the permissions for the factory that correspond to the passed-in Authorization.

Specified by:
getPermissions in class ForumFactory
Parameters:
authToken - the auth token for the user.
Returns:
the permissions for this object.

isAuthorized

public boolean isAuthorized(long type)
Description copied from class: ForumFactory
Returns true if the handle on the object has the permission specified. A list of possible permissions can be found in the ForumPermissions class. Certain methods of this class are restricted to certain permissions as specified in the method comments.

Specified by:
isAuthorized in class ForumFactory
Parameters:
type - a permission type.
See Also:
ForumPermissions

getGatewayManager

public GatewayManager getGatewayManager()
Description copied from class: ForumFactory
Returns a gateway manager that can be used for managing gateways

Specified by:
getGatewayManager in class ForumFactory
Returns:
gateway manager instance

getBanManager

public BanManager getBanManager()
Description copied from class: ForumFactory
Returns a ban manager that can be used for banning users

Specified by:
getBanManager in class ForumFactory
Returns:
ban manager instance

getRegistrationManager

public RegistrationManager getRegistrationManager()
Description copied from class: ForumFactory
Returns a validation manager that can be used for validating user accounts

Specified by:
getRegistrationManager in class ForumFactory
Returns:
validation manager instance

getRenderManager

public RenderManager getRenderManager()
Description copied from class: ForumFactory
Returns a render manager that can be used to manage system wide render filters and macros.

Specified by:
getRenderManager in class ForumFactory
Returns:
a RenderManager to manage system wide filters.
See Also:
RenderManager

getAbuseManager

public AbuseManager getAbuseManager()
Description copied from class: ForumFactory
Returns an abuse manager that can be used for managing abuse reports

Specified by:
getAbuseManager in class ForumFactory
Returns:
abuse manager instance

getTagManager

public TagManager getTagManager()
Description copied from class: ForumFactory
Returns a tag manager that can be used for managing tags

Specified by:
getTagManager in class ForumFactory
Returns:
tag manager instance

getModerationManager

public ModerationManager getModerationManager()
Description copied from class: ForumFactory
Returns a moderation manager that can be used for moderating messages

Specified by:
getModerationManager in class ForumFactory
Returns:
moderation manager instance

getEmailManager

public EmailManager getEmailManager()
Description copied from class: ForumFactory
Returns an EmailManager that can be used for sending out emails

Specified by:
getEmailManager in class ForumFactory
Returns:
an EmailManager that can be used for sending out emails

getPluginManager

public PluginManager getPluginManager()
Description copied from class: ForumFactory
Returns an instance of PluginManager that can be used for acquiring plugin instances.

Specified by:
getPluginManager in class ForumFactory
Returns:
an instance of PluginManager that can be used for acquiring plugin instances.

Jive Forums Project Page

Copyright © 1999-2006 Jive Software.