Package org.apache.commons.net.imap
Class AuthenticatingIMAPClient
- java.lang.Object
-
- org.apache.commons.net.SocketClient
-
- org.apache.commons.net.imap.IMAP
-
- org.apache.commons.net.imap.IMAPClient
-
- org.apache.commons.net.imap.IMAPSClient
-
- org.apache.commons.net.imap.AuthenticatingIMAPClient
-
public class AuthenticatingIMAPClient extends IMAPSClient
An IMAP Client class with authentication support.- See Also:
IMAPSClient
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AuthenticatingIMAPClient.AUTH_METHOD
The enumeration of currently-supported authentication methods.-
Nested classes/interfaces inherited from class org.apache.commons.net.imap.IMAPClient
IMAPClient.FETCH_ITEM_NAMES, IMAPClient.SEARCH_CRITERIA, IMAPClient.STATUS_DATA_ITEMS
-
Nested classes/interfaces inherited from class org.apache.commons.net.imap.IMAP
IMAP.IMAPChunkListener, IMAP.IMAPState
-
-
Field Summary
-
Fields inherited from class org.apache.commons.net.imap.IMAPSClient
DEFAULT_IMAPS_PORT, DEFAULT_PROTOCOL
-
Fields inherited from class org.apache.commons.net.imap.IMAP
__DEFAULT_ENCODING, __writer, _reader, DEFAULT_PORT, TRUE_CHUNK_LISTENER
-
Fields inherited from class org.apache.commons.net.SocketClient
_defaultPort_, _hostname_, _input_, _output_, _serverSocketFactory_, _socket_, _socketFactory_, _timeout_, connectTimeout, NETASCII_EOL
-
-
Constructor Summary
Constructors Constructor Description AuthenticatingIMAPClient()
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.AuthenticatingIMAPClient(boolean implicit)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.AuthenticatingIMAPClient(boolean implicit, javax.net.ssl.SSLContext ctx)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.AuthenticatingIMAPClient(java.lang.String proto)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.AuthenticatingIMAPClient(java.lang.String proto, boolean implicit)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.AuthenticatingIMAPClient(java.lang.String proto, boolean implicit, javax.net.ssl.SSLContext ctx)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.AuthenticatingIMAPClient(javax.net.ssl.SSLContext context)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
auth(AuthenticatingIMAPClient.AUTH_METHOD method, java.lang.String username, java.lang.String password)
Authenticate to the IMAP server by sending the AUTHENTICATE command with the selected mechanism, using the given username and the given password.boolean
authenticate(AuthenticatingIMAPClient.AUTH_METHOD method, java.lang.String username, java.lang.String password)
Authenticate to the IMAP server by sending the AUTHENTICATE command with the selected mechanism, using the given username and the given password.-
Methods inherited from class org.apache.commons.net.imap.IMAPSClient
_connectAction_, execTLS, getEnabledCipherSuites, getEnabledProtocols, getHostnameVerifier, getTrustManager, isEndpointCheckingEnabled, setEnabledCipherSuites, setEnabledProtocols, setEndpointCheckingEnabled, setHostnameVerifier, setKeyManager, setTrustManager
-
Methods inherited from class org.apache.commons.net.imap.IMAPClient
append, append, append, capability, check, close, copy, create, delete, examine, expunge, fetch, list, login, logout, lsub, noop, rename, search, search, select, status, store, subscribe, uid, unsubscribe
-
Methods inherited from class org.apache.commons.net.imap.IMAP
disconnect, doCommand, doCommand, fireReplyReceived, generateCommandID, getReplyString, getReplyStrings, getState, sendCommand, sendCommand, sendCommand, sendCommand, sendData, setChunkListener, setState
-
Methods inherited from class org.apache.commons.net.SocketClient
addProtocolCommandListener, connect, connect, connect, connect, connect, connect, createCommandSupport, fireCommandSent, getCharset, getCharsetName, getCommandSupport, getConnectTimeout, getDefaultPort, getDefaultTimeout, getKeepAlive, getLocalAddress, getLocalPort, getProxy, getReceiveBufferSize, getRemoteAddress, getRemotePort, getSendBufferSize, getServerSocketFactory, getSoLinger, getSoTimeout, getTcpNoDelay, isAvailable, isConnected, removeProtocolCommandListener, setCharset, setConnectTimeout, setDefaultPort, setDefaultTimeout, setKeepAlive, setProxy, setReceiveBufferSize, setSendBufferSize, setServerSocketFactory, setSocketFactory, setSoLinger, setSoTimeout, setTcpNoDelay, verifyRemote
-
-
-
-
Constructor Detail
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient()
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient. Sets security mode to explicit (isImplicit = false).
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient(boolean implicit)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.- Parameters:
implicit
- The security mode (Implicit/Explicit).
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient(java.lang.String proto)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.- Parameters:
proto
- the protocol.
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient(java.lang.String proto, boolean implicit)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.- Parameters:
proto
- the protocol.implicit
- The security mode(Implicit/Explicit).
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient(java.lang.String proto, boolean implicit, javax.net.ssl.SSLContext ctx)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.- Parameters:
proto
- the protocol.implicit
- The security mode(Implicit/Explicit).ctx
- the context
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient(boolean implicit, javax.net.ssl.SSLContext ctx)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.- Parameters:
implicit
- The security mode(Implicit/Explicit).ctx
- A pre-configured SSL Context.
-
AuthenticatingIMAPClient
public AuthenticatingIMAPClient(javax.net.ssl.SSLContext context)
Constructor for AuthenticatingIMAPClient that delegates to IMAPSClient.- Parameters:
context
- A pre-configured SSL Context.
-
-
Method Detail
-
authenticate
public boolean authenticate(AuthenticatingIMAPClient.AUTH_METHOD method, java.lang.String username, java.lang.String password) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.spec.InvalidKeySpecException
Authenticate to the IMAP server by sending the AUTHENTICATE command with the selected mechanism, using the given username and the given password.- Parameters:
method
- the method nameusername
- userpassword
- password- Returns:
- True if successfully completed, false if not.
- Throws:
java.io.IOException
- If an I/O error occurs while either sending a command to the server or receiving a reply from the server.java.security.NoSuchAlgorithmException
- If the CRAM hash algorithm cannot be instantiated by the Java runtime system.java.security.InvalidKeyException
- If the CRAM hash algorithm failed to use the given password.java.security.spec.InvalidKeySpecException
- If the CRAM hash algorithm failed to use the given password.
-
auth
public boolean auth(AuthenticatingIMAPClient.AUTH_METHOD method, java.lang.String username, java.lang.String password) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.spec.InvalidKeySpecException
Authenticate to the IMAP server by sending the AUTHENTICATE command with the selected mechanism, using the given username and the given password.- Parameters:
method
- the method nameusername
- userpassword
- password- Returns:
- True if successfully completed, false if not.
- Throws:
java.io.IOException
- If an I/O error occurs while either sending a command to the server or receiving a reply from the server.java.security.NoSuchAlgorithmException
- If the CRAM hash algorithm cannot be instantiated by the Java runtime system.java.security.InvalidKeyException
- If the CRAM hash algorithm failed to use the given password.java.security.spec.InvalidKeySpecException
- If the CRAM hash algorithm failed to use the given password.
-
-