Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /* This Source Code Form is subject to the terms of the Mozilla Public
3 : * License, v. 2.0. If a copy of the MPL was not distributed with this
4 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 :
6 :
7 : #include "mozilla/ModuleUtils.h"
8 : #include "nsIServiceManager.h"
9 : #include "nsPermissionManager.h"
10 : #include "nsPopupWindowManager.h"
11 : #include "nsICategoryManager.h"
12 : #include "nsCookiePermission.h"
13 : #include "nsXPIDLString.h"
14 :
15 : // Define the constructor function for the objects
16 3 : NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsIPermissionManager,
17 : nsPermissionManager::GetXPCOMSingleton)
18 0 : NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsPopupWindowManager, Init)
19 2 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsCookiePermission)
20 :
21 : NS_DEFINE_NAMED_CID(NS_PERMISSIONMANAGER_CID);
22 : NS_DEFINE_NAMED_CID(NS_POPUPWINDOWMANAGER_CID);
23 : NS_DEFINE_NAMED_CID(NS_COOKIEPERMISSION_CID);
24 :
25 :
26 : static const mozilla::Module::CIDEntry kCookieCIDs[] = {
27 : { &kNS_PERMISSIONMANAGER_CID, false, nullptr, nsIPermissionManagerConstructor },
28 : { &kNS_POPUPWINDOWMANAGER_CID, false, nullptr, nsPopupWindowManagerConstructor },
29 : { &kNS_COOKIEPERMISSION_CID, false, nullptr, nsCookiePermissionConstructor },
30 : { nullptr }
31 : };
32 :
33 : static const mozilla::Module::ContractIDEntry kCookieContracts[] = {
34 : { NS_PERMISSIONMANAGER_CONTRACTID, &kNS_PERMISSIONMANAGER_CID },
35 : { NS_POPUPWINDOWMANAGER_CONTRACTID, &kNS_POPUPWINDOWMANAGER_CID },
36 : { NS_COOKIEPERMISSION_CONTRACTID, &kNS_COOKIEPERMISSION_CID },
37 : { nullptr }
38 : };
39 :
40 : static const mozilla::Module kCookieModule = {
41 : mozilla::Module::kVersion,
42 : kCookieCIDs,
43 : kCookieContracts
44 : };
45 :
46 : NSMODULE_DEFN(nsCookieModule) = &kCookieModule;
|