mailnews/import/public/nsIImportService.idl
author Stefan Sitter <ssitter@gmail.com>
Mon, 29 Jun 2015 16:25:25 +0200
changeset 22819 99d02f70de9aff76228a13857aaf4020863c6974
parent 19756 edbe40b94a4d60c66d45c3a9d3a163908cdda053
child 36231 83c4a792b5894bb4fad4908ec2ae235568d871aa
permissions -rw-r--r--
Bug 1163306 - enable icaljs by default only on comm-central, use libical on comm-aurora. r=philipp

/* -*- Mode: C++; 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/. */

/*

  The import service.

 */

#include "nsISupports.idl"

interface nsIImportModule;
interface nsIImportMailboxDescriptor;
interface nsIImportABDescriptor;
interface nsIImportGeneric;
interface nsIImportFieldMap;
interface nsIMsgSendListener;
interface nsIMsgIdentity;
interface nsIMsgCompFields;
interface nsIArray;

[scriptable, uuid(d0ed4c50-5997-49c9-8a6a-045f0680ed29)]
interface nsIImportService : nsISupports
{
    void DiscoverModules();

  long GetModuleCount( in string filter);
  void GetModuleInfo( in string filter, in long index, out wstring name, out wstring description);
  wstring GetModuleName( in string filter, in long index);
  wstring GetModuleDescription( in string filter, in long index);
  nsIImportModule  GetModule( in string filter, in long index);
  nsIImportModule GetModuleWithCID( in nsCIDRef cid);

  nsIImportFieldMap      CreateNewFieldMap();
  nsIImportMailboxDescriptor  CreateNewMailboxDescriptor();
  nsIImportABDescriptor    CreateNewABDescriptor();
  nsIImportGeneric      CreateNewGenericMail();
  nsIImportGeneric      CreateNewGenericAddressBooks();
  void CreateRFC822Message(in nsIMsgIdentity aIdentity,
                           in nsIMsgCompFields aMsgFields,
                           in string aBodytype,
                           in ACString aBody,
                           in boolean aCreateAsDraft,
                           in nsIArray aLoadedAttachments,
                           in nsIArray aEmbeddedObjects,
                           in nsIMsgSendListener aListener);

};

%{ C++
#define NS_IMPORTSERVICE_CID              \
{ /* 5df96d60-1726-11d3-a206-00a0cc26da63 */      \
   0x5df96d60, 0x1726, 0x11d3,                   \
   {0xa2, 0x06, 0x0, 0xa0, 0xcc, 0x26, 0xda, 0x63}}

#define NS_IMPORTSERVICE_CONTRACTID "@mozilla.org/import/import-service;1"
%}