summaryrefslogtreecommitdiffstats
path: root/toolkit/components/build
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/build')
-rw-r--r--toolkit/components/build/moz.build35
-rw-r--r--toolkit/components/build/nsToolkitCompsCID.h188
-rw-r--r--toolkit/components/build/nsToolkitCompsModule.cpp246
3 files changed, 469 insertions, 0 deletions
diff --git a/toolkit/components/build/moz.build b/toolkit/components/build/moz.build
new file mode 100644
index 000000000..0851091b1
--- /dev/null
+++ b/toolkit/components/build/moz.build
@@ -0,0 +1,35 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+EXPORTS += [
+ 'nsToolkitCompsCID.h',
+]
+
+SOURCES += [
+ 'nsToolkitCompsModule.cpp',
+]
+
+FINAL_LIBRARY = 'xul'
+
+LOCAL_INCLUDES += [
+ '../../xre',
+ '../alerts',
+ '../downloads',
+ '../feeds',
+ '../find',
+ '../jsdownloads/src',
+ '../perfmonitoring',
+ '../protobuf',
+ '../startup',
+ '../statusfilter',
+ '../typeaheadfind',
+ '../url-classifier',
+]
+
+if not CONFIG['MOZ_DISABLE_PARENTAL_CONTROLS']:
+ LOCAL_INCLUDES += [
+ '../parentalcontrols',
+ ]
diff --git a/toolkit/components/build/nsToolkitCompsCID.h b/toolkit/components/build/nsToolkitCompsCID.h
new file mode 100644
index 000000000..064f1dbc4
--- /dev/null
+++ b/toolkit/components/build/nsToolkitCompsCID.h
@@ -0,0 +1,188 @@
+/* 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/. */
+
+#define NS_ALERTSERVICE_CONTRACTID \
+ "@mozilla.org/alerts-service;1"
+
+// This separate service uses the same nsIAlertsService interface,
+// but instead sends a notification to a platform alerts API
+// if available. Using a separate CID allows us to overwrite the XUL
+// alerts service at runtime.
+#define NS_SYSTEMALERTSERVICE_CONTRACTID \
+ "@mozilla.org/system-alerts-service;1"
+
+#define NS_AUTOCOMPLETECONTROLLER_CONTRACTID \
+ "@mozilla.org/autocomplete/controller;1"
+
+#define NS_AUTOCOMPLETESIMPLERESULT_CONTRACTID \
+ "@mozilla.org/autocomplete/simple-result;1"
+
+#define NS_AUTOCOMPLETEMDBRESULT_CONTRACTID \
+ "@mozilla.org/autocomplete/mdb-result;1"
+
+#define NS_DOWNLOADMANAGER_CONTRACTID \
+ "@mozilla.org/download-manager;1"
+
+#define NS_DOWNLOADPLATFORM_CONTRACTID \
+ "@mozilla.org/toolkit/download-platform;1"
+
+#define NS_FORMHISTORY_CONTRACTID \
+ "@mozilla.org/satchel/form-history;1"
+
+#define NS_FORMFILLCONTROLLER_CONTRACTID \
+ "@mozilla.org/satchel/form-fill-controller;1"
+
+#define NS_FORMHISTORYAUTOCOMPLETE_CONTRACTID \
+ "@mozilla.org/autocomplete/search;1?name=form-history"
+
+#define NS_GLOBALHISTORY_DATASOURCE_CONTRACTID \
+ "@mozilla.org/rdf/datasource;1?name=history"
+
+#define NS_TYPEAHEADFIND_CONTRACTID \
+ "@mozilla.org/typeaheadfind;1"
+
+#define NS_PARENTALCONTROLSSERVICE_CONTRACTID \
+ "@mozilla.org/parental-controls-service;1"
+
+#define NS_URLCLASSIFIERPREFIXSET_CONTRACTID \
+ "@mozilla.org/url-classifier/prefixset;1"
+
+#define NS_URLCLASSIFIERDBSERVICE_CONTRACTID \
+ "@mozilla.org/url-classifier/dbservice;1"
+
+#define NS_URLCLASSIFIERSTREAMUPDATER_CONTRACTID \
+ "@mozilla.org/url-classifier/streamupdater;1"
+
+#define NS_URLCLASSIFIERUTILS_CONTRACTID \
+ "@mozilla.org/url-classifier/utils;1"
+
+#define NS_URLCLASSIFIERHASHCOMPLETER_CONTRACTID \
+ "@mozilla.org/url-classifier/hashcompleter;1"
+
+#define NS_NAVHISTORYSERVICE_CONTRACTID \
+ "@mozilla.org/browser/nav-history-service;1"
+
+#define NS_ANNOTATIONSERVICE_CONTRACTID \
+ "@mozilla.org/browser/annotation-service;1"
+
+#define NS_NAVBOOKMARKSSERVICE_CONTRACTID \
+ "@mozilla.org/browser/nav-bookmarks-service;1"
+
+#define NS_LIVEMARKSERVICE_CONTRACTID \
+ "@mozilla.org/browser/livemark-service;2"
+
+#define NS_TAGGINGSERVICE_CONTRACTID \
+"@mozilla.org/browser/tagging-service;1"
+
+#define NS_FAVICONSERVICE_CONTRACTID \
+ "@mozilla.org/browser/favicon-service;1"
+
+#define NS_APPSTARTUP_CONTRACTID \
+ "@mozilla.org/toolkit/app-startup;1"
+
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+#define NS_UPDATEPROCESSOR_CONTRACTID \
+ "@mozilla.org/updates/update-processor;1"
+#endif
+
+#define NS_ADDONCONTENTPOLICY_CONTRACTID \
+ "@mozilla.org/addons/content-policy;1"
+
+#define NS_ADDONPATHSERVICE_CONTRACTID \
+ "@mozilla.org/addon-path-service;1"
+
+/////////////////////////////////////////////////////////////////////////////
+
+#define ALERT_NOTIFICATION_CID \
+{ 0x9a7b7a41, 0x0b47, 0x47f7, { 0xb6, 0x1b, 0x15, 0xa2, 0x10, 0xd6, 0xf0, 0x20 } }
+
+// {A0CCAAF8-09DA-44D8-B250-9AC3E93C8117}
+#define NS_ALERTSSERVICE_CID \
+{ 0xa0ccaaf8, 0x9da, 0x44d8, { 0xb2, 0x50, 0x9a, 0xc3, 0xe9, 0x3c, 0x81, 0x17 } }
+
+// {84E11F80-CA55-11DD-AD8B-0800200C9A66}
+#define NS_SYSTEMALERTSSERVICE_CID \
+{ 0x84e11f80, 0xca55, 0x11dd, { 0xad, 0x8b, 0x08, 0x00, 0x20, 0x0c, 0x9a, 0x66 } }
+
+// {F6D5EBBD-34F4-487d-9D10-3D34123E3EB9}
+#define NS_AUTOCOMPLETECONTROLLER_CID \
+{ 0xf6d5ebbd, 0x34f4, 0x487d, { 0x9d, 0x10, 0x3d, 0x34, 0x12, 0x3e, 0x3e, 0xb9 } }
+
+// {2ee3039b-2de4-43d9-93b0-649beacff39a}
+#define NS_AUTOCOMPLETESIMPLERESULT_CID \
+{ 0x2ee3039b, 0x2de4, 0x43d9, { 0x93, 0xb0, 0x64, 0x9b, 0xea, 0xcf, 0xf3, 0x9a } }
+
+// {7A6F70B6-2BBD-44b5-9304-501352D44AB5}
+#define NS_AUTOCOMPLETEMDBRESULT_CID \
+{ 0x7a6f70b6, 0x2bbd, 0x44b5, { 0x93, 0x4, 0x50, 0x13, 0x52, 0xd4, 0x4a, 0xb5 } }
+
+#define NS_DOWNLOADMANAGER_CID \
+ { 0xedb0490e, 0x1dd1, 0x11b2, { 0x83, 0xb8, 0xdb, 0xf8, 0xd8, 0x59, 0x06, 0xa6 } }
+
+#define NS_DOWNLOADPLATFORM_CID \
+ { 0x649a14c9, 0xfe5c, 0x48ec, { 0x9c, 0x85, 0x00, 0xca, 0xd9, 0xcc, 0xf3, 0x2e } }
+
+// {895DB6C7-DBDF-40ea-9F64-B175033243DC}
+#define NS_FORMFILLCONTROLLER_CID \
+{ 0x895db6c7, 0xdbdf, 0x40ea, { 0x9f, 0x64, 0xb1, 0x75, 0x3, 0x32, 0x43, 0xdc } }
+
+// {59648a91-5a60-4122-8ff2-54b839c84aed}
+#define NS_GLOBALHISTORY_CID \
+{ 0x59648a91, 0x5a60, 0x4122, { 0x8f, 0xf2, 0x54, 0xb8, 0x39, 0xc8, 0x4a, 0xed} }
+
+// {59648a91-5a60-4122-8ff2-54b839c84aed}
+#define NS_PARENTALCONTROLSSERVICE_CID \
+{ 0x580530e5, 0x118c, 0x4bc7, { 0xab, 0x88, 0xbc, 0x2c, 0xd2, 0xb9, 0x72, 0x23 } }
+
+// {e7f70966-9a37-48d7-8aeb-35998f31090e}
+#define NS_TYPEAHEADFIND_CID \
+{ 0xe7f70966, 0x9a37, 0x48d7, { 0x8a, 0xeb, 0x35, 0x99, 0x8f, 0x31, 0x09, 0x0e} }
+
+// {3d8579f0-75fa-4e00-ba41-38661d5b5d17}
+ #define NS_URLCLASSIFIERPREFIXSET_CID \
+{ 0x3d8579f0, 0x75fa, 0x4e00, { 0xba, 0x41, 0x38, 0x66, 0x1d, 0x5b, 0x5d, 0x17} }
+
+// {7a258022-6765-11e5-b379-b37b1f2354be}
+#define NS_URLCLASSIFIERDBSERVICE_CID \
+{ 0x7a258022, 0x6765, 0x11e5, { 0xb3, 0x79, 0xb3, 0x7b, 0x1f, 0x23, 0x54, 0xbe} }
+
+// e1797597-f4d6-4dd3-a1e1-745ad352cd80
+#define NS_URLCLASSIFIERSTREAMUPDATER_CID \
+{ 0xe1797597, 0xf4d6, 0x4dd3, { 0xa1, 0xe1, 0x74, 0x5a, 0xd3, 0x52, 0xcd, 0x80 }}
+
+// {b7b2ccec-7912-4ea6-a548-b038447004bd}
+#define NS_URLCLASSIFIERUTILS_CID \
+{ 0xb7b2ccec, 0x7912, 0x4ea6, { 0xa5, 0x48, 0xb0, 0x38, 0x44, 0x70, 0x04, 0xbd} }
+
+#define NS_NAVHISTORYSERVICE_CID \
+{ 0x88cecbb7, 0x6c63, 0x4b3b, { 0x8c, 0xd4, 0x84, 0xf3, 0xb8, 0x22, 0x8c, 0x69 } }
+
+#define NS_NAVHISTORYRESULTTREEVIEWER_CID \
+{ 0x2ea8966f, 0x0671, 0x4c02, { 0x9c, 0x70, 0x94, 0x59, 0x56, 0xd4, 0x54, 0x34 } }
+
+#define NS_ANNOTATIONSERVICE_CID \
+{ 0x5e8d4751, 0x1852, 0x434b, { 0xa9, 0x92, 0x2c, 0x6d, 0x2a, 0x25, 0xfa, 0x46 } }
+
+#define NS_NAVBOOKMARKSSERVICE_CID \
+{ 0x9de95a0c, 0x39a4, 0x4d64, {0x9a, 0x53, 0x17, 0x94, 0x0d, 0xd7, 0xca, 0xbb}}
+
+#define NS_FAVICONSERVICE_CID \
+{ 0x984e3259, 0x9266, 0x49cf, { 0xb6, 0x05, 0x60, 0xb0, 0x22, 0xa0, 0x07, 0x56 } }
+
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+#define NS_UPDATEPROCESSOR_CID \
+{ 0xf3dcf644, 0x79e8, 0x4f59, { 0xa1, 0xbb, 0x87, 0x84, 0x54, 0x48, 0x8e, 0xf9 } }
+#endif
+
+#define NS_APPLICATION_REPUTATION_SERVICE_CONTRACTID \
+ "@mozilla.org/downloads/application-reputation-service;1"
+
+#define NS_APPLICATION_REPUTATION_SERVICE_CID \
+{ 0x8576c950, 0xf4a2, 0x11e2, { 0xb7, 0x78, 0x08, 0x00, 0x20, 0x0c, 0x9a, 0x66 } }
+
+#define NS_ADDONCONTENTPOLICY_CID \
+{ 0xc26a8241, 0xecf4, 0x4aed, { 0x9f, 0x3c, 0xf1, 0xf5, 0xc7, 0x13, 0xb9, 0xa5 } }
+
+#define NS_ADDON_PATH_SERVICE_CID \
+{ 0xa39f39d0, 0xdfb6, 0x11e3, { 0x8b, 0x68, 0x08, 0x00, 0x20, 0x0c, 0x9a, 0x66 } }
diff --git a/toolkit/components/build/nsToolkitCompsModule.cpp b/toolkit/components/build/nsToolkitCompsModule.cpp
new file mode 100644
index 000000000..675c8c92b
--- /dev/null
+++ b/toolkit/components/build/nsToolkitCompsModule.cpp
@@ -0,0 +1,246 @@
+/* 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 "mozilla/ModuleUtils.h"
+#include "nsAppStartup.h"
+#include "nsNetCID.h"
+#include "nsUserInfo.h"
+#include "nsToolkitCompsCID.h"
+#include "nsFindService.h"
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+#include "nsUpdateDriver.h"
+#endif
+
+#if !defined(MOZ_DISABLE_PARENTAL_CONTROLS)
+#include "nsParentalControlsService.h"
+#endif
+
+#include "mozilla/AlertNotification.h"
+#include "nsAlertsService.h"
+
+#include "nsDownloadManager.h"
+#include "DownloadPlatform.h"
+#include "nsDownloadProxy.h"
+#include "rdf.h"
+
+#include "nsTypeAheadFind.h"
+
+#include "ApplicationReputation.h"
+#include "nsUrlClassifierDBService.h"
+#include "nsUrlClassifierStreamUpdater.h"
+#include "nsUrlClassifierUtils.h"
+#include "nsUrlClassifierPrefixSet.h"
+
+#include "nsBrowserStatusFilter.h"
+#include "mozilla/FinalizationWitnessService.h"
+#include "mozilla/NativeOSFileInternals.h"
+#include "mozilla/AddonContentPolicy.h"
+#include "mozilla/AddonPathService.h"
+
+#if defined(XP_WIN)
+#include "NativeFileWatcherWin.h"
+#else
+#include "NativeFileWatcherNotSupported.h"
+#endif // (XP_WIN)
+
+#if !defined(MOZ_WIDGET_GONK) && !defined(MOZ_WIDGET_ANDROID)
+#define MOZ_HAS_TERMINATOR
+#endif
+
+#if defined(MOZ_HAS_TERMINATOR)
+#include "nsTerminator.h"
+#endif
+
+#define MOZ_HAS_PERFSTATS
+
+#if defined(MOZ_HAS_PERFSTATS)
+#include "nsPerformanceStats.h"
+#endif // defined (MOZ_HAS_PERFSTATS)
+
+using namespace mozilla;
+
+/////////////////////////////////////////////////////////////////////////////
+
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsAppStartup, Init)
+
+#if defined(MOZ_HAS_PERFSTATS)
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsPerformanceStatsService, Init)
+#endif // defined (MOZ_HAS_PERFSTATS)
+
+#if defined(MOZ_HAS_TERMINATOR)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsTerminator)
+#endif
+
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsUserInfo)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsFindService)
+
+#if !defined(MOZ_DISABLE_PARENTAL_CONTROLS)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsParentalControlsService)
+#endif
+
+NS_GENERIC_FACTORY_CONSTRUCTOR(AlertNotification)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsAlertsService)
+
+NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsDownloadManager,
+ nsDownloadManager::GetSingleton)
+NS_GENERIC_FACTORY_CONSTRUCTOR(DownloadPlatform)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsDownloadProxy)
+
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsTypeAheadFind)
+
+NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(ApplicationReputationService,
+ ApplicationReputationService::GetSingleton)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsUrlClassifierPrefixSet)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsUrlClassifierStreamUpdater)
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsUrlClassifierUtils, Init)
+
+static nsresult
+nsUrlClassifierDBServiceConstructor(nsISupports *aOuter, REFNSIID aIID,
+ void **aResult)
+{
+ nsresult rv;
+ NS_ENSURE_ARG_POINTER(aResult);
+ NS_ENSURE_NO_AGGREGATION(aOuter);
+
+ nsUrlClassifierDBService *inst = nsUrlClassifierDBService::GetInstance(&rv);
+ if (nullptr == inst) {
+ return rv;
+ }
+ /* NS_ADDREF(inst); */
+ rv = inst->QueryInterface(aIID, aResult);
+ NS_RELEASE(inst);
+
+ return rv;
+}
+
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsBrowserStatusFilter)
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsUpdateProcessor)
+#endif
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(FinalizationWitnessService, Init)
+NS_GENERIC_FACTORY_CONSTRUCTOR(NativeOSFileInternalsService)
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(NativeFileWatcherService, Init)
+
+NS_GENERIC_FACTORY_CONSTRUCTOR(AddonContentPolicy)
+NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(AddonPathService, AddonPathService::GetInstance)
+
+NS_DEFINE_NAMED_CID(NS_TOOLKIT_APPSTARTUP_CID);
+#if defined(MOZ_HAS_PERFSTATS)
+NS_DEFINE_NAMED_CID(NS_TOOLKIT_PERFORMANCESTATSSERVICE_CID);
+#endif // defined (MOZ_HAS_PERFSTATS)
+
+#if defined(MOZ_HAS_TERMINATOR)
+NS_DEFINE_NAMED_CID(NS_TOOLKIT_TERMINATOR_CID);
+#endif
+NS_DEFINE_NAMED_CID(NS_USERINFO_CID);
+NS_DEFINE_NAMED_CID(ALERT_NOTIFICATION_CID);
+NS_DEFINE_NAMED_CID(NS_ALERTSSERVICE_CID);
+#if !defined(MOZ_DISABLE_PARENTAL_CONTROLS)
+NS_DEFINE_NAMED_CID(NS_PARENTALCONTROLSSERVICE_CID);
+#endif
+NS_DEFINE_NAMED_CID(NS_DOWNLOADMANAGER_CID);
+NS_DEFINE_NAMED_CID(NS_DOWNLOADPLATFORM_CID);
+NS_DEFINE_NAMED_CID(NS_DOWNLOAD_CID);
+NS_DEFINE_NAMED_CID(NS_FIND_SERVICE_CID);
+NS_DEFINE_NAMED_CID(NS_TYPEAHEADFIND_CID);
+NS_DEFINE_NAMED_CID(NS_APPLICATION_REPUTATION_SERVICE_CID);
+NS_DEFINE_NAMED_CID(NS_URLCLASSIFIERPREFIXSET_CID);
+NS_DEFINE_NAMED_CID(NS_URLCLASSIFIERDBSERVICE_CID);
+NS_DEFINE_NAMED_CID(NS_URLCLASSIFIERSTREAMUPDATER_CID);
+NS_DEFINE_NAMED_CID(NS_URLCLASSIFIERUTILS_CID);
+NS_DEFINE_NAMED_CID(NS_BROWSERSTATUSFILTER_CID);
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+NS_DEFINE_NAMED_CID(NS_UPDATEPROCESSOR_CID);
+#endif
+NS_DEFINE_NAMED_CID(FINALIZATIONWITNESSSERVICE_CID);
+NS_DEFINE_NAMED_CID(NATIVE_OSFILE_INTERNALS_SERVICE_CID);
+NS_DEFINE_NAMED_CID(NS_ADDONCONTENTPOLICY_CID);
+NS_DEFINE_NAMED_CID(NS_ADDON_PATH_SERVICE_CID);
+NS_DEFINE_NAMED_CID(NATIVE_FILEWATCHER_SERVICE_CID);
+
+static const Module::CIDEntry kToolkitCIDs[] = {
+ { &kNS_TOOLKIT_APPSTARTUP_CID, false, nullptr, nsAppStartupConstructor },
+#if defined(MOZ_HAS_TERMINATOR)
+ { &kNS_TOOLKIT_TERMINATOR_CID, false, nullptr, nsTerminatorConstructor },
+#endif
+#if defined(MOZ_HAS_PERFSTATS)
+ { &kNS_TOOLKIT_PERFORMANCESTATSSERVICE_CID, false, nullptr, nsPerformanceStatsServiceConstructor },
+#endif // defined (MOZ_HAS_PERFSTATS)
+ { &kNS_USERINFO_CID, false, nullptr, nsUserInfoConstructor },
+ { &kALERT_NOTIFICATION_CID, false, nullptr, AlertNotificationConstructor },
+ { &kNS_ALERTSSERVICE_CID, false, nullptr, nsAlertsServiceConstructor },
+#if !defined(MOZ_DISABLE_PARENTAL_CONTROLS)
+ { &kNS_PARENTALCONTROLSSERVICE_CID, false, nullptr, nsParentalControlsServiceConstructor },
+#endif
+ { &kNS_DOWNLOADMANAGER_CID, false, nullptr, nsDownloadManagerConstructor },
+ { &kNS_DOWNLOADPLATFORM_CID, false, nullptr, DownloadPlatformConstructor },
+ { &kNS_DOWNLOAD_CID, false, nullptr, nsDownloadProxyConstructor },
+ { &kNS_FIND_SERVICE_CID, false, nullptr, nsFindServiceConstructor },
+ { &kNS_TYPEAHEADFIND_CID, false, nullptr, nsTypeAheadFindConstructor },
+ { &kNS_APPLICATION_REPUTATION_SERVICE_CID, false, nullptr, ApplicationReputationServiceConstructor },
+ { &kNS_URLCLASSIFIERPREFIXSET_CID, false, nullptr, nsUrlClassifierPrefixSetConstructor },
+ { &kNS_URLCLASSIFIERDBSERVICE_CID, false, nullptr, nsUrlClassifierDBServiceConstructor },
+ { &kNS_URLCLASSIFIERSTREAMUPDATER_CID, false, nullptr, nsUrlClassifierStreamUpdaterConstructor },
+ { &kNS_URLCLASSIFIERUTILS_CID, false, nullptr, nsUrlClassifierUtilsConstructor },
+ { &kNS_BROWSERSTATUSFILTER_CID, false, nullptr, nsBrowserStatusFilterConstructor },
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+ { &kNS_UPDATEPROCESSOR_CID, false, nullptr, nsUpdateProcessorConstructor },
+#endif
+ { &kFINALIZATIONWITNESSSERVICE_CID, false, nullptr, FinalizationWitnessServiceConstructor },
+ { &kNATIVE_OSFILE_INTERNALS_SERVICE_CID, false, nullptr, NativeOSFileInternalsServiceConstructor },
+ { &kNS_ADDONCONTENTPOLICY_CID, false, nullptr, AddonContentPolicyConstructor },
+ { &kNS_ADDON_PATH_SERVICE_CID, false, nullptr, AddonPathServiceConstructor },
+ { &kNATIVE_FILEWATCHER_SERVICE_CID, false, nullptr, NativeFileWatcherServiceConstructor },
+ { nullptr }
+};
+
+static const Module::ContractIDEntry kToolkitContracts[] = {
+ { NS_APPSTARTUP_CONTRACTID, &kNS_TOOLKIT_APPSTARTUP_CID },
+#if defined(MOZ_HAS_TERMINATOR)
+ { NS_TOOLKIT_TERMINATOR_CONTRACTID, &kNS_TOOLKIT_TERMINATOR_CID },
+#endif
+#if defined(MOZ_HAS_PERFSTATS)
+ { NS_TOOLKIT_PERFORMANCESTATSSERVICE_CONTRACTID, &kNS_TOOLKIT_PERFORMANCESTATSSERVICE_CID },
+#endif // defined (MOZ_HAS_PERFSTATS)
+ { NS_USERINFO_CONTRACTID, &kNS_USERINFO_CID },
+ { ALERT_NOTIFICATION_CONTRACTID, &kALERT_NOTIFICATION_CID },
+ { NS_ALERTSERVICE_CONTRACTID, &kNS_ALERTSSERVICE_CID },
+#if !defined(MOZ_DISABLE_PARENTAL_CONTROLS)
+ { NS_PARENTALCONTROLSSERVICE_CONTRACTID, &kNS_PARENTALCONTROLSSERVICE_CID },
+#endif
+ { NS_DOWNLOADMANAGER_CONTRACTID, &kNS_DOWNLOADMANAGER_CID },
+ { NS_DOWNLOADPLATFORM_CONTRACTID, &kNS_DOWNLOADPLATFORM_CID },
+ { NS_FIND_SERVICE_CONTRACTID, &kNS_FIND_SERVICE_CID },
+ { NS_TYPEAHEADFIND_CONTRACTID, &kNS_TYPEAHEADFIND_CID },
+ { NS_APPLICATION_REPUTATION_SERVICE_CONTRACTID, &kNS_APPLICATION_REPUTATION_SERVICE_CID },
+ { NS_URLCLASSIFIERPREFIXSET_CONTRACTID, &kNS_URLCLASSIFIERPREFIXSET_CID },
+ { NS_URLCLASSIFIERDBSERVICE_CONTRACTID, &kNS_URLCLASSIFIERDBSERVICE_CID },
+ { NS_URICLASSIFIERSERVICE_CONTRACTID, &kNS_URLCLASSIFIERDBSERVICE_CID },
+ { NS_URLCLASSIFIERSTREAMUPDATER_CONTRACTID, &kNS_URLCLASSIFIERSTREAMUPDATER_CID },
+ { NS_URLCLASSIFIERUTILS_CONTRACTID, &kNS_URLCLASSIFIERUTILS_CID },
+ { NS_BROWSERSTATUSFILTER_CONTRACTID, &kNS_BROWSERSTATUSFILTER_CID },
+#if defined(MOZ_UPDATER) && !defined(MOZ_WIDGET_ANDROID)
+ { NS_UPDATEPROCESSOR_CONTRACTID, &kNS_UPDATEPROCESSOR_CID },
+#endif
+ { FINALIZATIONWITNESSSERVICE_CONTRACTID, &kFINALIZATIONWITNESSSERVICE_CID },
+ { NATIVE_OSFILE_INTERNALS_SERVICE_CONTRACTID, &kNATIVE_OSFILE_INTERNALS_SERVICE_CID },
+ { NS_ADDONCONTENTPOLICY_CONTRACTID, &kNS_ADDONCONTENTPOLICY_CID },
+ { NS_ADDONPATHSERVICE_CONTRACTID, &kNS_ADDON_PATH_SERVICE_CID },
+ { NATIVE_FILEWATCHER_SERVICE_CONTRACTID, &kNATIVE_FILEWATCHER_SERVICE_CID },
+ { nullptr }
+};
+
+static const mozilla::Module::CategoryEntry kToolkitCategories[] = {
+ { "content-policy", NS_ADDONCONTENTPOLICY_CONTRACTID, NS_ADDONCONTENTPOLICY_CONTRACTID },
+ { nullptr }
+};
+
+static const Module kToolkitModule = {
+ Module::kVersion,
+ kToolkitCIDs,
+ kToolkitContracts,
+ kToolkitCategories
+};
+
+NSMODULE_DEFN(nsToolkitCompsModule) = &kToolkitModule;