SK.gnome.dwarf.mail.imap
Class IMAPParameters

java.lang.Object
  extended bySK.gnome.dwarf.GenericService
      extended bySK.gnome.dwarf.ParametersService
          extended bySK.gnome.dwarf.mail.imap.IMAPParameters
All Implemented Interfaces:
SK.gnome.dwarf.Parameters, SK.gnome.dwarf.Reportable, SK.gnome.dwarf.Service

public final class IMAPParameters
extends SK.gnome.dwarf.ParametersService

Provides the IMAP-related parameters.

An instance of this class may be added to the IMAPServer to provide a set of IMAP-related runtime parameters. The parameters are by default available to the server and all its nested services.

Each parameter is represented by a protected field with its setter and getter methods, which can be used to access the given parameter from the outside world.

Note that some of the parameters are read-only while others may be modified in runtime either via the server console, or programatically.


Field Summary
protected  java.lang.String[] authMethods
          The actually available authentication methods.
protected  int clientTimeout
          Client inactivity timeout.
protected  java.lang.String[] extensions
          The actually available IMAP extensions.
protected  boolean checkACL
          Whether to check the Access Control List.
protected  boolean insecureLoginDisabled
          Whether to allow the transfer of cleartext passwords via insecure connections.
protected  int loginDelay
          The delay after a failed login.
protected  boolean sendServerInfo
          Enables or disables exposing of the server name and version to the client.
protected  boolean updateACL
          Whether to automatically update the Access Control List.
 
Fields inherited from class SK.gnome.dwarf.GenericService
initParameters, parent
 
Fields inherited from interface SK.gnome.dwarf.Service
INITIALIZED, LOG_DEBUG, LOG_ERROR, LOG_FATAL, LOG_INFO, LOG_TRACE, LOG_WARN, LOG_XFER, SHUTDOWN, STARTED, STOPPED
 
Constructor Summary
IMAPParameters(java.lang.String name)
          Creates a new SMTPParameters.
 
Method Summary
 boolean containsAuthMethod(java.lang.String method)
           
 boolean containsExtension(java.lang.String extension)
           
 java.lang.String[] getAllAuthMethods()
           
 java.lang.String[] getAllExtensions()
           
 java.lang.String[] getAuthMethods()
           
 int getClientTimeout()
           
 java.lang.String[] getExtensions()
           
 boolean getCheckACL()
           
 boolean getInsecureLoginDisabled()
           
 int getLoginDelay()
           
 boolean getSendServerInfo()
           
 boolean getUpdateACL()
           
 void setAuthMethods(java.lang.String[] methods)
           
 void setClientTimeout(int timeout)
           
 void setExtensions(java.lang.String[] extensions)
           
 void setCheckACL(boolean enable)
           
 void setInsecureLoginDisabled(boolean enable)
           
 void setLoginDelay(int delay)
           
 void setSendServerInfo(boolean enable)
           
 void setUpdateACL(boolean enable)
           
 
Methods inherited from class SK.gnome.dwarf.ParametersService
readOnly, report
 
Methods inherited from class SK.gnome.dwarf.GenericService
getAuthenticator, getAuthFacility, getFullName, getInitParameter, getInitParameterNames, getLogFacility, getLogger, getName, getParameters, getPrincipal, getShutdownTimeout, getState, init, log, log, login, logout, setAuthFacility, setInitParameters, setLogFacility, shutdown, start, stop, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

clientTimeout

protected int clientTimeout
Client inactivity timeout.

Specifies the client inactivity timeout in seconds. After this time the server will automatically close the idle connection.

Default value: 1800


sendServerInfo

protected boolean sendServerInfo
Enables or disables exposing of the server name and version to the client.

Default value: false


extensions

protected java.lang.String[] extensions
The actually available IMAP extensions.

This parameter is read-only.

Default value: AUTH, LITERAL+, NAMESPACE, STARTTLS


authMethods

protected java.lang.String[] authMethods
The actually available authentication methods.

This parameter is read-only.

Default value: LOGIN, PLAIN


loginDelay

protected int loginDelay
The delay after a failed login.

This value in seconds specifies how long will server wait for accepting another login request in the same session after a failed one. This feature may prevent some sort of attacks against the server.

Default value: 5


insecureLoginDisabled

protected boolean insecureLoginDisabled
Whether to allow the transfer of cleartext passwords via insecure connections.

If enabled the server will not allow to authenticate via a method which uses cleartext passwords unless the session is secured by an encryption mechanism. The LOGIN command and the AUTHENTICATE command with LOGIN or PLAIN methods are examples of such prohibited means.

Default value: false


checkACL

protected boolean checkACL
Whether to check the Access Control List.

If enabled the server will use the available ACLStore to check the user's permissions when performing a mail operation.

This parameter is read-only.

Default value: false


updateACL

protected boolean updateACL
Whether to automatically update the Access Control List.

If enabled the server will automatically update the ACL of the given user when a folder is created, renamed or deleted. If the folder is created, all permissions are granted to its owner by default. This feature works only if checkACL is enabled, too.

This parameter is read-only.

Default value: false

Constructor Detail

IMAPParameters

public IMAPParameters(java.lang.String name)
Creates a new SMTPParameters.

Method Detail

getAllExtensions

public java.lang.String[] getAllExtensions()

getAllAuthMethods

public java.lang.String[] getAllAuthMethods()

setClientTimeout

public void setClientTimeout(int timeout)

getClientTimeout

public int getClientTimeout()

getSendServerInfo

public boolean getSendServerInfo()

setSendServerInfo

public void setSendServerInfo(boolean enable)

getExtensions

public java.lang.String[] getExtensions()

containsExtension

public boolean containsExtension(java.lang.String extension)

setExtensions

public void setExtensions(java.lang.String[] extensions)

getAuthMethods

public java.lang.String[] getAuthMethods()

containsAuthMethod

public boolean containsAuthMethod(java.lang.String method)

setAuthMethods

public void setAuthMethods(java.lang.String[] methods)

getLoginDelay

public int getLoginDelay()

setLoginDelay

public void setLoginDelay(int delay)

getInsecureLoginDisabled

public boolean getInsecureLoginDisabled()

setInsecureLoginDisabled

public void setInsecureLoginDisabled(boolean enable)

getCheckACL

public boolean getCheckACL()

setCheckACL

public void setCheckACL(boolean enable)

getUpdateACL

public boolean getUpdateACL()

setUpdateACL

public void setUpdateACL(boolean enable)


Copyright (c) 2004-2005, Gnome Ltd. All rights reserved.