Mozilla/mozilla/msgsdk/java/protocol/IMAP4/src/SystemPreferences.java
prasad%netscape.com 920bfbe0de adding new sources
git-svn-id: svn://10.0.0.236/trunk@8401 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-24 22:31:18 +00:00

176 lines
4.1 KiB
Java

/*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
* http://www.mozilla.org/NPL/.
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the License.
*
* The Original Code is the Netscape Messaging Access SDK Version 3.5 code,
* released on or about June 15, 1998.
*
* The Initial Developer of the Original Code is Netscape Communications
* Corporation. Portions created by Netscape are Copyright (C) 1998 Netscape
* Communications Corporation. All Rights Reserved.
*
* Contributor(s): ______________________________________.
*/
/*
* Copyright (c) 1997 and 1998 Netscape Communications Corporation
* (http://home.netscape.com/misc/trademarks.html)
*/
package netscape.messaging.imap4;
import netscape.messaging.*;
import java.io.*;
import java.net.*;
import java.util.*;
/**
* The SystemPreferences class records the preferences
* for the IMAP4 implementation of the Messaging Access SDK.
* <p>The methods of this class return preferences for block
* size, default port, debug flag, and time-out length.
* @author alterego@netscape.com
* @version 0.1
*/
public class SystemPreferences
{
/**
*Creates a SystemPreferences object.
*Default constructor for the SystemPreferences class.
*/
public SystemPreferences()
{
m_io = null;
m_imapPort = 143;
m_timeOut = 0;
m_fDebug = false;
m_blockSize = 1024;
}
/**
* Sets the synchronous timeout for reading data from the socket
* input buffer.
* @param in_timeOut Time-out in milliseconds. Default: 60000 milliseconds.
* @exception InterruptedIOException If the timeout period expires.
* @see #getTimeout
*/
public synchronized void setTimeout(int in_timeOut) throws IOException
{
m_timeOut = in_timeOut;
if(m_io != null)
{
m_io.setTimeout(in_timeOut);
}
}
/**
* Gets the synchronous timeout for reading data from the socket
* input buffer. If timeout expires, a InterruptedIOException is thrown.
* @param in_timeOut Time-out in milliseconds.
* @exception InterruptedIOException If the timeout period expires.
* @see #setTimeout
*/
public synchronized int getTimeout()
{
return m_timeOut;
}
/**
* Sets the debug flag.
* @param in_fDebug Status of the flag. true: debug flag is present;
* false: no debug flag.
* @see #getDebugFlag
*/
public synchronized void setDebugFlag(boolean in_fDebug)
{
m_fDebug = in_fDebug;
}
/**
* Gets the debug flag.
* @return boolean Status of the debug flag. true: debug flag is present;
* false: no debug flag.
* @see #setDebugFlag
*/
public synchronized boolean getDebugFlag()
{
return m_fDebug;
}
/**
* Sets the block size returned in fetchData.
* @param int Block size.
* @see #getBlockSize
*/
public synchronized void setBlockSize(int in_blockSize)
{
m_blockSize = in_blockSize;
}
/**
* Gets the block size used in fetchData.
* @return int Block size.
* @see #setBlockSize
*/
public synchronized int getBlockSize()
{
return m_blockSize;
}
/**
* Sets the default port to connect to.
* @param in_port Numeric ID of default port.
* @see #getPort
*/
public synchronized void setPort(int in_port)
{
m_imapPort = in_port;
}
/**
* Gets the default port to connect to.
* @return int The default port.
* @see #setPort
*/
public synchronized int getPort()
{
return m_imapPort;
}
/**
* Sets the IO object.
* @param in_io The IO object
*/
protected synchronized void setIO(IO in_io)
{
m_io = in_io;
}
//Data members
/**The default IMAP4 port*/
private int m_imapPort;
/**The time out in milliseconds for waiting for data on a read off the socket. Default: 1000*/
private int m_timeOut;
/**A reference to the dispatcher so that it can update the time out*/
private IO m_io;
/**The block size*/
private int m_blockSize;
/**The debug flag*/
private boolean m_fDebug;
}