diff options
Diffstat (limited to 'mailnews/base/public/nsIMsgProtocolInfo.idl')
-rw-r--r-- | mailnews/base/public/nsIMsgProtocolInfo.idl | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/mailnews/base/public/nsIMsgProtocolInfo.idl b/mailnews/base/public/nsIMsgProtocolInfo.idl new file mode 100644 index 000000000..0913d93bd --- /dev/null +++ b/mailnews/base/public/nsIMsgProtocolInfo.idl @@ -0,0 +1,99 @@ +/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsISupports.idl" + +interface nsIFile; + +%{C++ +#define NS_MSGPROTOCOLINFO_CONTRACTID_PREFIX \ + "@mozilla.org/messenger/protocol/info;1?type=" +%} + + +[scriptable, uuid(9428b5f5-8b12-493c-aae2-18296c2877b1)] +interface nsIMsgProtocolInfo : nsISupports +{ + /** + * the default path to store local data for this type of + * server. Each server is usually in a subdirectory below this + */ + attribute nsIFile defaultLocalPath; + + /** + * the IID of the protocol-specific interface for this server + * usually used from JS to dynamically get server-specific attributes + */ + readonly attribute nsIIDPtr serverIID; + + /** + * does this server type require a username? + * for instance, news does not but IMAP/POP do + */ + readonly attribute boolean requiresUsername; + + /** + * if the pretty name of the server should + * just be the e-mail address. Otherwise it usually + * ends up being something like "news on hostname" + */ + readonly attribute boolean preflightPrettyNameWithEmailAddress; + + /** + * can this type of server be removed from the account manager? + * for instance, local mail is not removable + */ + readonly attribute boolean canDelete; + + /** + * can this type of server log in at startup? + */ + readonly attribute boolean canLoginAtStartUp; + + /** + * can you duplicate this server? + * for instance, local mail is unique and should not be duplicated. + */ + readonly attribute boolean canDuplicate; + + /* the default port + This is similar to nsIProtocolHanderl.defaultPort, + but for architectural reasons, there is a mail-specific interface to this. + When the input param isSecure is set to true, for all supported protocols, + the secure port value is returned. If isSecure is set to false the default + port value is returned */ + long getDefaultServerPort(in boolean isSecure); + + /** + * An attribute that tell us whether on not we can + * get messages for the given server type + * this is poorly named right now. + * it's really is there an inbox for this type? + * XXX todo, rename this. + */ + readonly attribute boolean canGetMessages; + + /** + * do messages arrive for this server + * if they do, we can use our junk controls on it. + */ + readonly attribute boolean canGetIncomingMessages; + + /** + * do biff by default? + */ + readonly attribute boolean defaultDoBiff; + + /** + * do we need to show compose message link in the AccountCentral page ? + */ + readonly attribute boolean showComposeMsgLink; + + /** + * Will new folders be created asynchronously? + */ + readonly attribute boolean foldersCreatedAsync; +}; + |