/* -*- 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" #include "nsIUrlListener.idl" #include "nsINntpIncomingServer.idl" #include "MailNewsTypes2.idl" interface nsIURI; interface nsIFile; interface nsIMsgWindow; interface nsIMsgFolder; interface nsICacheStorage; [scriptable, uuid(dc5cadb0-966c-4ef1-a4c8-cc1e48d1ac61)] interface nsINntpService : nsISupports { nsIURI postMessage(in nsIFile aFileToPost, in string newsgroupNames, in string aAccountKey, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow); nsIURI getNewNews(in nsINntpIncomingServer nntpServer, in AUTF8String uri, in boolean getOld, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow); nsIURI cancelMessage(in AUTF8String cancelURL, in AUTF8String messageURI, in nsISupports aConsumer, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow); void getListOfGroupsOnServer(in nsINntpIncomingServer nntpServer, in nsIMsgWindow aMsgWindow, in boolean getOnlyNew); nsIURI fetchMessage(in nsIMsgFolder newsFolder, in nsMsgKey key, in nsIMsgWindow aMsgWindow, in nsISupports aConsumer, in nsIUrlListener aUrlListener); void downloadNewsgroupsForOffline(in nsIMsgWindow aMsgWindow, in nsIUrlListener aListener); void downloadFolderForOffline(in nsIMsgFolder newsFolder, in nsIMsgWindow aMsgWindow); void downloadMessagesForOffline(in nsIMsgFolder newsFolder, in Array keys, in nsIMsgWindow aMsgWindow); /** * can handle news-message:// and news:// */ void decomposeNewsURI(in AUTF8String uri, out nsIMsgFolder folder, out nsMsgKey key); // handle to the cache session used by news.... readonly attribute nsICacheStorage cacheStorage; };