Interface MessageSearchSession
- All Superinterfaces:
AutoCloseable, Closeable, MessageQuerySession, OsidSession, OsidSession
This session provides methods for searching among Message
objects. The search query is constructed using the MessageQuery.
getMessagesByQuery() is the basic search method and returns a list
of Messages. A more advanced search may be performed with
getMessagesBySearch().It accepts an MessageSearch in addition to
the query for the purpose of specifying additional options affecting the
entire search, such as ordering. getMessagesBySearch() returns an
MessageSearchResults that can be used to access the resulting
MessageList or be used to perform a search within the result set
through MessageList.
This session defines views that offer differing behaviors for searching.
- federated mailbox view: searches include messages in mailboxes of which this mailbox is a ancestor in the mailbox hierarchy
- isolated mailbox view: searches are restricted to messages in this mailbox
Messages may have a query record indicated by their respective record
types. The query record is accessed via the MessageQuery.
Like all OsidSessions, MessageSearchSessions are
dedicated to single processing threads and a single authenticated user.
-
Method Summary
Modifier and TypeMethodDescriptiongetMessageQueryFromInspector(MessageQueryInspector messageQueryInspector) Gets a message query from an inspector.getMessagesBySearch(MessageQuery messageQuery, MessageSearch messageSearch) Gets the search results matching the given search query using the given search.Gets a message search.Gets a message search order.Methods inherited from interface MessageQuerySession
canSearchMessages, getMailbox, getMailboxId, getMessageQuery, getMessagesByQuery, useFederatedMailboxView, useIsolatedMailboxViewMethods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatTypes, getLocales, isAuthenticated, startTransaction, supportsTransactions
-
Method Details
-
getMessageSearch
MessageSearch getMessageSearch()Gets a message search.- Returns:
- the message search
- Compliance:
mandatory- This method must be implemented.
-
getMessageSearchOrder
MessageSearchOrder getMessageSearchOrder()Gets a message search order. TheMessageSearchOrderis supplied to aMessageSearchto specify the ordering of results.- Returns:
- the message search order
- Compliance:
mandatory- This method must be implemented.
-
getMessagesBySearch
MessageSearchResults getMessagesBySearch(MessageQuery messageQuery, MessageSearch messageSearch) throws OperationFailedException, PermissionDeniedException Gets the search results matching the given search query using the given search.- Parameters:
messageQuery- the message querymessageSearch- the message search- Returns:
- the returned search results
- Throws:
NullArgumentException-messageQueryormessageSearchisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException-messageQueryormessageSearchis not of this service- Compliance:
mandatory- This method must be implemented.
-
getMessageQueryFromInspector
Gets a message query from an inspector. The inspector is available from aMessageSearchResults.- Parameters:
messageQueryInspector- a message query inspector- Returns:
- the message query
- Throws:
NullArgumentException-messageQueryInspectorisnullUnsupportedException-messageQueryInspectoris not of this service- Compliance:
mandatory- This method must be implemented.
-