Interface MessageQuerySession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
- All Known Subinterfaces:
MessageSearchSession
This session provides methods for searching among Message
objects. The search query is constructed using the MessageQuery .
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 .
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performMessagesearches.Gets theMailboxassociated with this session.Gets theMailboxIdassociated with this session.Gets a message query.getMessagesByQuery(MessageQuery messageQuery) Gets a list ofMessagesmatching the given message query.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getMailboxId
Id getMailboxId()Gets theMailboxIdassociated with this session.- Returns:
- the
Mailbox Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getMailbox
Gets theMailboxassociated with this session.- Returns:
- the
Mailboxassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canSearchMessages
boolean canSearchMessages()Tests if this user can performMessagesearches. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer search operations to unauthorized users.- Returns:
falseif search methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useFederatedMailboxView
void useFederatedMailboxView()Federates the view for methods in this session. A federated view will include messages in mailboxes which are children of this mailbox in the mailbox hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedMailboxView
void useIsolatedMailboxView()Isolates the view for methods in this session. An isolated view restricts lookups to this mailbox only.- Compliance:
mandatory- This method is must be implemented.
-
getMessageQuery
MessageQuery getMessageQuery()Gets a message query. The returned query will not have an extension query.- Returns:
- the message query
- Compliance:
mandatory- This method must be implemented.
-
getMessagesByQuery
MessageList getMessagesByQuery(MessageQuery messageQuery) throws OperationFailedException, PermissionDeniedException Gets a list ofMessagesmatching the given message query.- Parameters:
messageQuery- the message query- Returns:
- the returned
MessageList - Throws:
NullArgumentException-messageQueryisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException-messageQueryis not of this service- Compliance:
mandatory- This method must be implemented.
-