public class SMTPSession
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected java.io.BufferedReader |
in |
protected java.io.OutputStream |
out |
static java.lang.String |
RESPONSE_LOGIN_SUCCESS |
static java.lang.String |
RESPONSE_MAILACTIONOKEY |
static java.lang.String |
RESPONSE_SERVERREADY |
static java.lang.String |
RESPONSE_SERVICE_CLOSING_TRANSMISSION |
static java.lang.String |
RESPONSE_SMTP_AUTH_NTLM_BLOB_Response |
static java.lang.String |
RESPONSE_STARTMAILINPUT |
protected java.net.Socket |
serverSocket |
static int |
SOCKET_READ_TIMEOUT
15 sec.
|
static int |
SSLPORT |
protected SimpleList<java.lang.String> |
supportedFeature |
| Constructor and Description |
|---|
SMTPSession()
Creates new SMTP session
|
SMTPSession(java.lang.String host,
int port,
java.lang.String sender)
Creates new SMTP session by given SMTP host and port, sender email address
|
SMTPSession(java.lang.String host,
java.lang.String sender)
Creates new SMTP session by given SMTP host, sender email address,
Assumes SMTP port is 25 (default for SMTP service).
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
checkServerResponse(java.lang.CharSequence response,
java.lang.String code)
Checks if given server reply starts with expectedResponseStart.
|
boolean |
close()
Closes down the connection to SMTP server (if open).
|
protected boolean |
connect()
Connects to the SMTP server and gets input and output streams (in, out).
|
boolean |
connect(java.lang.String userName,
java.lang.String password)
Connects to the SMTP server and gets input and output streams (in, out).
|
SMTPSession |
connectSSL(java.lang.String host,
java.lang.String sender,
java.lang.String password) |
protected boolean |
doCommand(java.lang.String commandString,
java.lang.String responseCode)
Sends given commandString to the server, gets its reply and checks if it
starts with expectedResponseStart.
|
CharacterBuffer |
getLastAnswer() |
java.lang.String |
getLastSended() |
java.lang.String |
getLocalAdress() |
java.lang.String |
getLocalHost()
Get the name of the local host, for use in the EHLO and HELO commands.
|
protected CharacterBuffer |
getResponse()
Gets a response back from the server.
|
protected CharacterBuffer |
sendCommand(java.lang.String commandString)
Sends given command and waits for a response from server.
|
boolean |
sendMessage(EMailMessage message)
Sends a message using the SMTP protocol.
|
protected void |
sendValues(byte... cmd)
Sends given command and waits for a response from server.
|
protected void |
sendValues(java.lang.String commandString) |
void |
startTLS() |
public static final java.lang.String RESPONSE_SERVERREADY
public static final java.lang.String RESPONSE_MAILACTIONOKEY
public static final java.lang.String RESPONSE_STARTMAILINPUT
public static final java.lang.String RESPONSE_SMTP_AUTH_NTLM_BLOB_Response
public static final java.lang.String RESPONSE_LOGIN_SUCCESS
public static final java.lang.String RESPONSE_SERVICE_CLOSING_TRANSMISSION
public static final int SSLPORT
public static final int SOCKET_READ_TIMEOUT
protected java.net.Socket serverSocket
protected java.io.BufferedReader in
protected java.io.OutputStream out
protected SimpleList<java.lang.String> supportedFeature
public SMTPSession(java.lang.String host,
int port,
java.lang.String sender)
host - SMTP hostport - SMTP portsender - email address of senderpublic SMTPSession(java.lang.String host,
java.lang.String sender)
host - SMTP hostsender - email address of senderpublic SMTPSession()
public SMTPSession connectSSL(java.lang.String host, java.lang.String sender, java.lang.String password)
public boolean close()
public boolean connect(java.lang.String userName,
java.lang.String password)
userName - the Usernamepassword - the passwordpublic void startTLS()
protected boolean connect()
protected CharacterBuffer sendCommand(java.lang.String commandString)
commandString - String for sendingprotected void sendValues(java.lang.String commandString)
protected void sendValues(byte... cmd)
cmd - bytes for sendingprotected boolean doCommand(java.lang.String commandString,
java.lang.String responseCode)
commandString - the Command to sendresponseCode - expected value of Responseprotected boolean checkServerResponse(java.lang.CharSequence response,
java.lang.String code)
response - Response as Stringcode - check the response for response codeprotected CharacterBuffer getResponse()
public java.lang.String getLocalHost()
public java.lang.String getLocalAdress()
public boolean sendMessage(EMailMessage message)
message - to sendpublic CharacterBuffer getLastAnswer()
public java.lang.String getLastSended()