close
public void close()
throws MessagingException
Close this service and terminate its physical connection.
The default implementation simply calls setConnected(false) and then
sends a CLOSED event to all registered ConnectionListeners.
Subclasses overriding this method should still ensure it is closed; they should
also ensure that it is called if the connection is closed automatically, for
for example in a finalizer.
connect
public void connect()
throws MessagingException
A generic connect method that takes no parameters allowing subclasses
to implement an appropriate authentication scheme.
The default implementation calls connect(null, null, null)
connect
public void connect(String host,
String user,
String password)
throws MessagingException
Connect to the specified host using a simple username/password authenticaion scheme
and the default port.
The default implementation calls connect(host, -1, user, password)
host
- the host to connect touser
- the user namepassword
- the user's password
connect
public void connect(String host,
int port,
String user,
String password)
throws MessagingException
Connect to the specified host at the specified port using a simple username/password authenticaion scheme.
If this Service is already connected, an IllegalStateException is thrown.
host
- the host to connect toport
- the port to connect to; pass -1 to use the default for the protocoluser
- the user namepassword
- the user's password
finalize
protected void finalize()
throws Throwable
getURLName
public URLName getURLName()
Return a copy of the URLName representing this service with the password and file information removed.
- the URLName for this service
isConnected
public boolean isConnected()
Check if this service is currently connected.
The default implementation simply returns the value of a private boolean field;
subclasses may wish to override this method to verify the physical connection.
- true if this service is connected
notifyConnectionListeners
protected void notifyConnectionListeners(int type)
protocolConnect
protected boolean protocolConnect(String host,
int port,
String user,
String password)
throws MessagingException
Attempt the protocol-specific connection; subclasses should override this to establish
a connection in the appropriate manner.
This method should return true if the connection was established.
It may return false to cause the
connect(String,int,String,String)
method to
reattempt the connection after trying to obtain user and password information from the user.
Alternatively it may throw a AuthenticatedFailedException to abandon the conection attempt.
host
- port
- user
- password
-
queueEvent
protected void queueEvent(MailEvent event,
Vector listeners)
setConnected
protected void setConnected(boolean connected)
Notification to subclasses that the connection state has changed.
This method is called by the connect() and close() methods to indicate state change;
subclasses should also call this method if the connection is automatically closed
for some reason.
connected
- the connection state
setURLName
protected void setURLName(URLName url)
Set the url field.
toString
public String toString()