public final class ImapSessionImpl extends Object implements ImapSession
Constructor and Description |
---|
ImapSessionImpl(ImapHostManager imapHost,
UserManager users,
ImapHandler handler,
String clientAddress) |
Modifier and Type | Method and Description |
---|---|
void |
closeConnection()
Closes the connection for this session.
|
void |
closeConnection(String byeMessage)
Closes the connection for this session with a final good-bye message.
|
void |
deselect()
Moves the session out of
ImapSessionState.SELECTED state and back into
ImapSessionState.AUTHENTICATED state. |
String |
getClientIP() |
ImapHostManager |
getHost()
Provides the Imap host for this server, which is used for all access to mail
storage and subscriptions.
|
ImapSessionFolder |
getSelected()
Provides the selected mailbox for this session, or
null if this
session is not in ImapSessionState.SELECTED state. |
ImapSessionState |
getState() |
GreenMailUser |
getUser()
Provides the authenticated user for this session, or
null if this
session is not in ImapSessionState.AUTHENTICATED or
ImapSessionState.SELECTED state. |
UserManager |
getUserManager()
Provides the UserManager for this session, to allow session
to validate logins.
|
void |
setAuthenticated(GreenMailUser user)
Moves the session into
ImapSessionState.AUTHENTICATED state with
the supplied user. |
void |
setSelected(MailFolder folder,
boolean readOnly)
Moves this session into
ImapSessionState.SELECTED state and sets the
supplied mailbox to be the currently selected mailbox. |
void |
unsolicitedResponses(ImapResponse request)
Sends any unsolicited responses to the client, such as EXISTS and FLAGS
responses when the selected mailbox is modified by another user.
|
void |
unsolicitedResponses(ImapResponse response,
boolean omitExpunged) |
public ImapSessionImpl(ImapHostManager imapHost, UserManager users, ImapHandler handler, String clientAddress)
public ImapHostManager getHost()
ImapSession
getHost
in interface ImapSession
public void unsolicitedResponses(ImapResponse request) throws FolderException
ImapSession
unsolicitedResponses
in interface ImapSession
request
- The response to write toFolderException
public void unsolicitedResponses(ImapResponse response, boolean omitExpunged) throws FolderException
unsolicitedResponses
in interface ImapSession
FolderException
public void closeConnection(String byeMessage)
ImapSession
closeConnection
in interface ImapSession
byeMessage
- the good-bye message.public void closeConnection()
ImapSession
closeConnection
in interface ImapSession
public UserManager getUserManager()
ImapSession
getUserManager
in interface ImapSession
public String getClientIP()
getClientIP
in interface ImapSession
public void setAuthenticated(GreenMailUser user)
ImapSession
ImapSessionState.AUTHENTICATED
state with
the supplied user.setAuthenticated
in interface ImapSession
user
- The user who is authenticated for this session.public GreenMailUser getUser()
ImapSession
null
if this
session is not in ImapSessionState.AUTHENTICATED
or
ImapSessionState.SELECTED
state.getUser
in interface ImapSession
public void deselect()
ImapSession
ImapSessionState.SELECTED
state and back into
ImapSessionState.AUTHENTICATED
state. The selected mailbox is cleared.deselect
in interface ImapSession
public void setSelected(MailFolder folder, boolean readOnly)
ImapSession
ImapSessionState.SELECTED
state and sets the
supplied mailbox to be the currently selected mailbox.setSelected
in interface ImapSession
folder
- The selected mailbox.readOnly
- If true
, the selection is set to be read only.public ImapSessionFolder getSelected()
ImapSession
null
if this
session is not in ImapSessionState.SELECTED
state.getSelected
in interface ImapSession
public ImapSessionState getState()
getState
in interface ImapSession
Copyright © 2006–2019 Icegreen Technologies. All rights reserved.