oracle.workspaces.resource.discussion
Class CwBoard
java.lang.Object
oracle.workspaces.resource.CwResourceItem
oracle.workspaces.resource.discussion.CwBoard
- All Implemented Interfaces:
- CwAttachmentEnabled, CwEntity, CwExceptionConstants
- public class CwBoard
- extends CwResourceItem
- implements CwExceptionConstants
This is the counterpart of Threaded Discussion Board in the context of a workspace. Note that CwBoardProperties contains the TdBoard reference. This class and CwBoardProperties together act as a "decorator" which wraps the functionality of the underlying TdBoard instance.
Fields inherited from interface oracle.workspaces.exmsgs.CwExceptionConstants |
CW_ADD_NONPARENTMEMBER_TO_SUBWSPC, CW_ANNOUNCEMENT_NOT_FOUND, CW_ASSERTION_ERROR, CW_ASSOCIATION_NOT_FOUND, CW_ATTACHMENT_ARRAY_PARAMS_MISMATCH, CW_ATTACHMENTS_CONTAINER_ERROR, CW_ATTR_SYNTAX_VIOLATION_BODY, CW_ATTR_SYNTAX_VIOLATION_DESCRIPTION, CW_ATTR_SYNTAX_VIOLATION_DISPLAY_NAME, CW_ATTR_SYNTAX_VIOLATION_HOSTNAME, CW_ATTR_SYNTAX_VIOLATION_LOCATION, CW_ATTR_SYNTAX_VIOLATION_NAME, CW_ATTR_SYNTAX_VIOLATION_NON_ASCII_NAME, CW_ATTR_SYNTAX_VIOLATION_NON_ASCII_WORKSPACE_NAME, CW_ATTR_SYNTAX_VIOLATION_PATH, CW_ATTR_SYNTAX_VIOLATION_PORT, CW_ATTR_SYNTAX_VIOLATION_TITLE, CW_ATTR_SYNTAX_VIOLATION_WHITESPACE, CW_ATTR_VAL_INVALID_DISPLAYNAME_DUPLICATION, CW_ATTR_VAL_INVALID_NAME_DUPLICATION, CW_ATTR_VAL_INVALID_NAME_MISSING, CW_ATTR_VAL_INVALID_RSRC_TYPE_DUPLICATION, CW_ATTR_VAL_INVALID_RSRC_TYPE_MISSING, CW_ATTR_VAL_INVALID_TOKEN_NAME_BODY_EXST, CW_ATTR_VAL_INVALID_TOKEN_NAME_BODY_NEW, CW_ATTR_VAL_INVALID_TOKEN_NAME_BODY_REM, CW_ATTR_VAL_INVALID_TOKEN_NAME_BODY_RMV, CW_ATTR_VAL_INVALID_TOKEN_NAME_SUB_EXST, CW_ATTR_VAL_INVALID_TOKEN_NAME_SUB_NEW, CW_ATTR_VAL_INVALID_TOKEN_NAME_SUB_REM, CW_ATTR_VAL_INVALID_TOKEN_NAME_SUB_RMV, CW_CALENDAR_ATLEAST_ONE_ATTENDEE, CW_CALENDAR_ATTENDEE_NOT_FOUND, CW_CALENDAR_CANNOT_BOOK_ATTENDEE_EXCEPTION, CW_CALENDAR_CONFIGURATION_EXCEPTION, CW_CALENDAR_CORRUPTED_EXCEPTION, CW_CALENDAR_CREATE_WEBCONF_PAST_EXCEPTION, CW_CALENDAR_EVENT_ALREADY_EXIST, CW_CALENDAR_EVENT_NOT_FOUND, CW_CALENDAR_HANDLE_BAD_EXCEPTION, CW_CALENDAR_INTERNAL_EXCEPTION, CW_CALENDAR_ITEM_NOT_FOUND, CW_CALENDAR_PROVISION_EXCEPTION, CW_CALENDAR_QUOTA_LIMIT_EXCEPTION, CW_CALENDAR_SESSION_INVALID, CW_CALENDAR_SESSION_INVALID_WITH_WARNING, CW_CALENDAR_TASK_ALREADY_EXIST, CW_CALENDAR_TASK_NOT_FOUND, CW_CALENDAR_UNAVAILABLE_EXCEPTION, CW_CALENDAR_UNSUPPORTED_FOR_REGULAR, CW_CALENDAR_UNSUPPORTED_FOR_REPEATING, CW_CALENDAR_UNSUPPORTED_FOR_TYPE, CW_CANNOT_EDIT_READ_ONLY, CW_CANNOT_REASSIGN_WORKSPACE_OWNER_ROLE, CW_CONFIGURATION_PROPERTY_NOT_FOUND, CW_COULD_NOT_CREATE_CONTENT_SERVICES_CW_ADMIN, CW_DB_CONNECTION_ERROR, CW_DB_EXEC_INTERNAL_ERROR, CW_DEFAULT_PROPERTIES_FILE_CANNOT_BE_LOADED, CW_DEFAULT_WORKSPACE_TEMPLATE_CANNOT_BE_DELETED, CW_DELETE_WORKSPACE_OWNER, CW_DELETE_WORKSPACE_WITH_CHILDREN, CW_DELETE_WORKSPACE_WITH_RESOURCE, CW_DISC_AND_EMAIL_UNAVAILABLE_EXCEPTION, CW_DISCUSSION_CORRUPTED_EXCEPTION, CW_DISCUSSION_EXCEPTION_NO_ERRCODE, CW_DISCUSSION_INTERNAL_EXCEPTION, CW_DISCUSSION_ITEM_ALREADY_EXIST, CW_DISCUSSION_ITEM_NOT_FOUND, CW_DISCUSSION_ITEM_NOT_FOUND_NOARG, CW_DISCUSSION_UNSUPPORTED_PROPERTY, CW_DISCUSSIONS_EMAIL_GUEST_CANNOT_CREATE_RESOURCE, CW_DUPLICATE_ATTACHMENT, CW_DUPLICATE_WS_TEMPLATE_NAME, CW_DUPLICATED_MEMBER_SUPPLIED, CW_EMAIL_CORRUPTED_EXCEPTION, CW_EMAIL_EXCEPTION_NO_ERRCODE, CW_EMAIL_INTERNAL_EXCEPTION, CW_EMAIL_SESSION_INVALID_WITH_WARNING, CW_EXTERNAL_MEMBER_SUPPLIED, CW_FILES_ACCESS_DENIED, CW_FILES_CANNOT_DELETE_ONLY_VERSION, CW_FILES_CANNOT_LOCK_FOLDERS, CW_FILES_CANNOT_OVERRIDE_FINAL_PARENT, CW_FILES_CORRUPTED_EXCEPTION, CW_FILES_FEATURE_DISABLED, CW_FILES_FILE_IS_NOT_CHECKED_OUT, CW_FILES_HTTP_EXCEPTION, CW_FILES_HTTP_LOCKED_EXCEPTION, CW_FILES_INTERNAL_EXCEPTION, CW_FILES_ITEM_ALREADY_EXIST, CW_FILES_ITEM_ALREADY_LOCKED, CW_FILES_ITEM_NOT_FOUND, CW_FILES_MAX_CONCURRENT_OPS_EXCEEDED, CW_FILES_MEMBER_NOT_FOUND, CW_FILES_OPERATION_NOT_ALLOWED_IN_TRASH, CW_FILES_OVER_QUOTA, CW_FILES_SERVER_CONNECTION_LOST, CW_FILES_SESSION_INVALID_WITH_WARNING, CW_FILES_SHARED_FOLDER_NOT_FOUND, CW_FILES_UNAVAILABLE_EXCEPTION, CW_FILES_UNSUPPORTED_NEW_TRASH_ITEM, CW_FILES_UNSUPPORTED_TRASH_LOCK, CW_FILES_VERSIONING_DISABLED, CW_GET_OCS_USER_ERROR, CW_HTTP_INTERNAL_ERROR, CW_HTTP_UNAUTHORIZED_ERROR, CW_HTTP_UNSUPPORTED_AUTH_SCHEME_ERROR, CW_HTTP_UNSUPPORTED_METHOD_ERROR, CW_IMMUTABLE_UNSUPPORTED_OPERATION, CW_INTERNAL_OP_ERROR, CW_INVALID_CONTENT_SERVICES_ADMINISTRATOR, CW_INVALID_CONTENT_SERVICES_CONTAINER_NAME, CW_INVALID_RECIPIENT_EMAIL_ADDRESS, CW_INVALID_SEARCH_CONTAINER, CW_INVALID_SEARCH_ROOT_ENTITY, CW_INVALID_TEMPLATE_SYNTAX, CW_INVALID_USER_EMAIL, CW_INVALID_WS_METADATA_SEARCH_QUERY, CW_IO_INTERNAL_ERROR, CW_LDAP_ATTRIBUTE_ALREADY_EXIST, CW_LDAP_ATTRIBUTE_ALREADY_EXIST_NOARG, CW_LDAP_ATTRIBUTE_NOT_FOUND, CW_LDAP_ATTRIBUTE_NOT_FOUND_NOARG, CW_LDAP_COMMUNICATION_ERROR, CW_LDAP_CONNECTION_ERROR, CW_LDAP_ENTRY_ALREADY_EXIST, CW_LDAP_ENTRY_ALREADY_EXIST_NOARG, CW_LDAP_ENTRY_NOT_FOUND, CW_LDAP_ENTRY_NOT_FOUND_NOARG, CW_LDAP_EXEC_INTERNAL_ERROR, CW_LDAP_GROUP_ALREADY_EXIST, CW_LDAP_GROUP_NOT_FOUND, CW_LDAP_GROUP_NOT_FOUND_NOARG, CW_LDAP_MEMBER_ALREADY_EXIST, CW_LDAP_MEMBER_NOT_FOUND, CW_LDAP_MEMBER_NOT_FOUND_WSNAME_ONLY, CW_LDAP_MISSING_SEARCHBASE_ERROR, CW_LDAP_MISSING_SUBSCRIBER_ERROR, CW_LDAP_USER_NOT_FOUND, CW_LDAP_USER_NOT_FOUND_NOARG, CW_LDAP_WORKSPACE_ALREADY_EXIST, CW_LDAP_WORKSPACE_NOT_FOUND, CW_LDAP_WORKSPACE_NOT_FOUND_NOARG, CW_MEMBER_ALREADY_EXIST, CW_MEMBER_ALREADY_EXIST_NOARG, CW_MEMBER_MGMT_ATTRIBUTE_ERROR, CW_MEMBER_MGMT_MAX_NUMBER_EXCEEDED, CW_MEMBER_NOT_FOUND, CW_MULTIPLE_VIRTUAL_SERVICE_AVAILABLE, CW_NOT_AUTHORIZED, CW_NOT_AUTHORIZED_WORKSPACE_SETTING, CW_NULL_WORKSPACE_PATH, CW_OPERATION_INSTANCE_NOT_FOUND, CW_OPERATION_INSTANCE_NOT_FOUND_NOARG, CW_PARENT_ENTITY_FOUND, CW_PERMISSION_NAME_INVALID, CW_PRIV_MGMT_SELF, CW_PROPERTIES_NULL, CW_PROPERTY_NOT_FOUND, CW_RESERVED_TEMPLATE_CATEGORY, CW_RESOURCE_ALREADY_EXIST, CW_RESOURCE_ATTR_RSRC_TYPE_MISMATCH, CW_RESOURCE_ATTR_VAL_INVALID, CW_RESOURCE_ATTR_VAL_INVALID_RSRC_TYPE_MOIDIFICATION, CW_RESOURCE_ATTR_VAL_INVALID_UID_MOIDIFICATION, CW_RESOURCE_CONTAINS_ATTACHMENT, CW_RESOURCE_NOT_CONFIGURED, CW_RESOURCE_NOT_FOUND, CW_RESOURCE_NOT_FOUND_NO_WSPC, CW_RESOURCE_NOT_FOUND_NOARG, CW_RESOURCE_NOT_INITIALIZED, CW_RESOURCE_NOT_INSTALLED, CW_RESOURCE_NOT_PROVISION_EXCEPTION_WITH_STATUS, CW_RESOURCE_NOT_PROVISION_EXCEPTION_WITHOUT_STATUS, CW_RESOURCE_STATUS_NOT_SUPPORT_IN_RECOVERY, CW_RESOURCE_STATUS_UNACCESSIBLE, CW_ROLE_NOT_FOUND, CW_RSRC_ITEM_INVALID_DESC, CW_RSRC_ITEM_INVALID_NAME, CW_RSRC_ITEM_INVALID_PERCENT, CW_RSRC_ITEM_INVALID_SECURE_CONTENT_GRANTEE, CW_RSRC_ITEM_INVALID_SECURE_CONTENT_PERMISSION, CW_RSRC_ITEM_PARSING_ERROR, CW_RTC_SESSION_INVALID_WITH_WARNING, CW_SEARCH_INTERNAL_EXCEPTION, CW_SEARCH_INVALID_QUERY, CW_SEARCHLET_CONNECTION_EXCEPTION, CW_SEARCHLET_EXEC_EXCEPTION, CW_SEARCHLET_INIT_EXCEPTION, CW_SEARCHLET_JNDI_EXCEPTION, CW_SEARCHLET_USER_CONTEXT_EXCEPTION, CW_SERVICE_CONFIGURATION_ERROR, CW_SERVICE_UNINIT_ERROR, CW_SERVICE_UNINT_WSPC_MGRS, CW_SESSION_INVALID, CW_SESSION_NULL, CW_SUBGROUP_ALREADY_EXIST, CW_SUBGROUP_NOT_FOUND, CW_SUBGROUP_NOT_FOUND_NOARG, CW_SYSTEM_BUSY_EXCEPTION, CW_TEMPLATE_CONTENT_LOCATION_NOT_FOUND, CW_UID_NOT_IN_WORKSPACE, CW_UNSUPPORTED_SEARCH_ROOT_DESCRIPTOR, CW_UNSUPPORTED_SEARCH_TYPE, CW_VIEW_NOT_FOUND, CW_VIRTUAL_SERVICE_ATTRIBUTE_NOT_FOUND, CW_VIRTUAL_SERVICE_NOT_FOUND, CW_VIRTUAL_SERVICE_TYPE_NOT_FOUND, CW_WEBCONF_INTERNAL_EXCEPTION, CW_WORKSPACE_ALREADY_EXIST, CW_WORKSPACE_ATTR_VAL_INVALID, CW_WORKSPACE_BUSY_EXCEPTION, CW_WORKSPACE_CREATION_PARTIAL_SUCCESS, CW_WORKSPACE_DELETION_PARTIAL_SUCCESS, CW_WORKSPACE_DOES_NOT_NEED_RECOVERY, CW_WORKSPACE_NEED_RECOVERY, CW_WORKSPACE_NEED_RECOVERY_ARG, CW_WORKSPACE_NOT_EMPTY, CW_WORKSPACE_NOT_FOUND, CW_WORKSPACE_NOT_FOUND_NOARG, CW_WORKSPACE_NOT_MATCH, CW_WORKSPACE_ROLE_NAME_INVALID, CW_WORKSPACE_ROLE_NOT_MATCH, CW_WORKSPACE_SHARED_FOLDER_MEMBERSHIP_MISMATCH, CW_WORKSPACE_TEMPLATE_NOT_FOUND, CW_XML_INTERNAL_ERROR, ITEM_CREATED_PROPS_UPDATE_FAILED, OPERATION_SUCCESSFUL_WITH_ERRORS, WORKSPACES |
Method Summary |
CwMessage |
createMessage(CwMessageDefinition messageDef)
Post a message represented by the specified message definition to this board. |
void |
deleteThread(CwUid threadUid)
Delete the thread specified by the given CwUid. |
void |
deleteThreads(CwUid[] threadUids)
Delete the threads specified by the given CwUids. |
CwThreadIterator |
getFavoriteThreads()
Returns an iterator over this user's favorite threads within the scope of this board. |
CwThreadIterator |
getPopularThreads()
Returns an iterator over the popular threads within the scope of this board. |
CwThread |
getThreadByUid(CwUid threadUid)
Given a CwUid which represents a thread, retrieve and return the corresponding CwThread object. |
CwThreadIterator |
getThreads()
Return an iterator over all of the CwThreads in this board. |
CwThreadIterator |
getThreads(int iStartIndex, boolean bSortByCreationDate, boolean bAscending)
Return an iterator over the specified CwThreads in this board. |
CwUid |
getUid()
Returns the CwUid associated with this board. |
boolean |
isNew()
Returns true if this board is new to the user. |
boolean |
isNew(java.util.Date date)
Returns true if this board is new to the user since the specified date. |
boolean |
isUnread()
Returns true if and only if getLastModifiedTime() > getLastAccessTime(). |
boolean |
isUnread(java.util.Date startTime)
Returns true if and only if isUnread() and getLastModifiedTime() > startTime. |
CwSearchResultIterator |
search(java.lang.String szQuery, java.lang.String szUsername, java.util.Date startDate, java.util.Date endDate)
Search the board for messages that match the specified criteria. |
Methods inherited from class oracle.workspaces.resource.CwResourceItem |
addAttachments, getProperties, getResource, getWorkspace, listAllAttachments, listAllAttachmentsByType, listAttachments, listAttachmentsByType, listSourceAttachments, listSourceAttachmentsByType, removeAttachments, removeAttachments, storeProperties, supportsCreatedTime, updateAttachments, updateAttachments |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ALLOW_BOARD_EDIT_DELETE
public static final int ALLOW_BOARD_EDIT_DELETE
- Policy constant allowing board edit/delete on any messages.
- See Also:
- Constant Field Values
BOARD_EDIT_DELETE_ONLY_NO_REPLY
public static final int BOARD_EDIT_DELETE_ONLY_NO_REPLY
- Policy constant allowing board edit/delete only on messages with no replies.
- See Also:
- Constant Field Values
EMAIL_INBOUND_NONE
public static final int EMAIL_INBOUND_NONE
- Policy constant prohibiting inbound email to a board.
- See Also:
- Constant Field Values
EMAIL_INBOUND_OPEN
public static final int EMAIL_INBOUND_OPEN
- Policy constant allowing inbound email to a board for any user.
- See Also:
- Constant Field Values
EMAIL_INBOUND_RESTRICTED
public static final int EMAIL_INBOUND_RESTRICTED
- Policy constant allowing inbound email to a board only for users with write access to the board.
- See Also:
- Constant Field Values
NO_BOARD_EDIT_DELETE
public static final int NO_BOARD_EDIT_DELETE
- Policy constant prohibiting board edit/delete.
- See Also:
- Constant Field Values
createMessage
public CwMessage createMessage(CwMessageDefinition messageDef)
throws CwException
- Post a message represented by the specified message definition to this board. If the message definition specifies a new message, it will become the start of a new thread. If the message definition specifies a reply to a pre-existing message, it will become part of that message's thread.
-
- Returns:
- the new CwMessage
- Throws:
CwException
deleteThread
public void deleteThread(CwUid threadUid)
throws CwException
- Delete the thread specified by the given CwUid.
-
- Throws:
CwAttrValException
- if the CwUid is not a thread Uid.
CwException
deleteThreads
public void deleteThreads(CwUid[] threadUids)
throws CwException
- Delete the threads specified by the given CwUids.
-
- Throws:
CwAttrValException
- if any CwUid is not a thread Uid.
CwException
getFavoriteThreads
public CwThreadIterator getFavoriteThreads()
throws CwException
- Returns an iterator over this user's favorite threads within the scope of this board.
-
- Throws:
CwException
getPopularThreads
public CwThreadIterator getPopularThreads()
throws CwException
- Returns an iterator over the popular threads within the scope of this board.
-
- Throws:
CwException
getThreadByUid
public CwThread getThreadByUid(CwUid threadUid)
throws CwException
- Given a CwUid which represents a thread, retrieve and return the corresponding CwThread object.
-
- Throws:
CwAttrValException
- if the CwUid is not a thread Uid.
CwObjectNotFoundException
- if the object does not exist.
CwResourceCorruptedException
- if the resource mapping has been corrupted for this user.
CwException
getThreads
public CwThreadIterator getThreads()
throws CwException
- Return an iterator over all of the CwThreads in this board. By default, the threads will be sorted by last post date in descending order.
-
- Throws:
CwException
getThreads
public CwThreadIterator getThreads(int iStartIndex,
boolean bSortByCreationDate,
boolean bAscending)
throws CwException
- Return an iterator over the specified CwThreads in this board.
-
- Parameters:
iStartIndex
- the index of the first thread to return in the iterator; 0 for all threads
bSortByCreationDate
- if true, will sort threads by creation date rather than by last posting date
bAscending
- if true, will sort in ascending rather than descending order
- Returns:
- an array of CwThread objects which may be empty; will never return null
- Throws:
CwException
getUid
public CwUid getUid()
- Returns the CwUid associated with this board.
-
- Overrides:
getUid
in class CwResourceItem
isNew
public boolean isNew()
throws CwException
- Returns true if this board is new to the user.
-
- Specified by:
isNew
in interface CwEntity
- Overrides:
isNew
in class CwResourceItem
-
- Throws:
CwException
isNew
public boolean isNew(java.util.Date date)
throws CwException
- Returns true if this board is new to the user since the specified date.
-
- Specified by:
isNew
in interface CwEntity
- Overrides:
isNew
in class CwResourceItem
-
- Throws:
CwException
isUnread
public boolean isUnread()
throws CwException
- Returns true if and only if getLastModifiedTime() > getLastAccessTime().
-
- Specified by:
isUnread
in interface CwEntity
- Overrides:
isUnread
in class CwResourceItem
-
- Throws:
CwException
isUnread
public boolean isUnread(java.util.Date startTime)
throws CwException
- Returns true if and only if isUnread() and getLastModifiedTime() > startTime.
-
- Specified by:
isUnread
in interface CwEntity
- Overrides:
isUnread
in class CwResourceItem
-
- Throws:
CwException
search
public CwSearchResultIterator search(java.lang.String szQuery,
java.lang.String szUsername,
java.util.Date startDate,
java.util.Date endDate)
throws CwException
- Search the board for messages that match the specified criteria. The query string is matched against the subject of the message and the message body. The other fields can be used to restrict the search to messages posted by a specific user (szUsername) or within a certain time range (startDate, endDate). Attachment matching may or may not occur depending on TD server settings.
-
- Throws:
CwException