diff options
Diffstat (limited to 'storage/build')
-rw-r--r-- | storage/build/moz.build | 21 | ||||
-rw-r--r-- | storage/build/mozStorageCID.h | 30 | ||||
-rw-r--r-- | storage/build/mozStorageModule.cpp | 53 |
3 files changed, 104 insertions, 0 deletions
diff --git a/storage/build/moz.build b/storage/build/moz.build new file mode 100644 index 000000000..284cd7e3f --- /dev/null +++ b/storage/build/moz.build @@ -0,0 +1,21 @@ +# -*- 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 += [ + 'mozStorageCID.h', +] + +SOURCES += [ + 'mozStorageModule.cpp', +] + +FINAL_LIBRARY = 'xul' + +LOCAL_INCLUDES += [ + '..', +] + +CXXFLAGS += CONFIG['SQLITE_CFLAGS'] diff --git a/storage/build/mozStorageCID.h b/storage/build/mozStorageCID.h new file mode 100644 index 000000000..c682d07dd --- /dev/null +++ b/storage/build/mozStorageCID.h @@ -0,0 +1,30 @@ +/* -*- 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/. */ + +#ifndef MOZSTORAGECID_H +#define MOZSTORAGECID_H + +#define MOZ_STORAGE_CONTRACTID_PREFIX "@mozilla.org/storage" + + +/* b71a1f84-3a70-4d37-a348-f1ba0e27eead */ +#define MOZ_STORAGE_CONNECTION_CID \ +{ 0xb71a1f84, 0x3a70, 0x4d37, {0xa3, 0x48, 0xf1, 0xba, 0x0e, 0x27, 0xee, 0xad} } + +#define MOZ_STORAGE_CONNECTION_CONTRACTID MOZ_STORAGE_CONTRACTID_PREFIX "/connection;1" + +/* bbbb1d61-438f-4436-92ed-8308e5830fb0 */ +#define MOZ_STORAGE_SERVICE_CID \ +{ 0xbbbb1d61, 0x438f, 0x4436, {0x92, 0xed, 0x83, 0x08, 0xe5, 0x83, 0x0f, 0xb0} } + +#define MOZ_STORAGE_SERVICE_CONTRACTID MOZ_STORAGE_CONTRACTID_PREFIX "/service;1" + +/* 3b667ee0-d2da-4ccc-9c3d-95f2ca6a8b4c */ +#define VACUUMMANAGER_CID \ +{ 0x3b667ee0, 0xd2da, 0x4ccc, { 0x9c, 0x3d, 0x95, 0xf2, 0xca, 0x6a, 0x8b, 0x4c } } + +#define VACUUMMANAGER_CONTRACTID MOZ_STORAGE_CONTRACTID_PREFIX "/vacuum;1" + +#endif /* MOZSTORAGECID_H */ diff --git a/storage/build/mozStorageModule.cpp b/storage/build/mozStorageModule.cpp new file mode 100644 index 000000000..ba77e4c62 --- /dev/null +++ b/storage/build/mozStorageModule.cpp @@ -0,0 +1,53 @@ +/* -*- 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/. */ + +#include "nsCOMPtr.h" +#include "mozilla/ModuleUtils.h" + +#include "mozStorageService.h" +#include "mozStorageConnection.h" +#include "VacuumManager.h" + +#include "mozStorageCID.h" + +namespace mozilla { +namespace storage { + +NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(Service, + Service::getSingleton) +NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(VacuumManager, + VacuumManager::getSingleton) + +} // namespace storage +} // namespace mozilla + +NS_DEFINE_NAMED_CID(MOZ_STORAGE_SERVICE_CID); +NS_DEFINE_NAMED_CID(VACUUMMANAGER_CID); + +static const mozilla::Module::CIDEntry kStorageCIDs[] = { + { &kMOZ_STORAGE_SERVICE_CID, false, nullptr, mozilla::storage::ServiceConstructor }, + { &kVACUUMMANAGER_CID, false, nullptr, mozilla::storage::VacuumManagerConstructor }, + { nullptr } +}; + +static const mozilla::Module::ContractIDEntry kStorageContracts[] = { + { MOZ_STORAGE_SERVICE_CONTRACTID, &kMOZ_STORAGE_SERVICE_CID }, + { VACUUMMANAGER_CONTRACTID, &kVACUUMMANAGER_CID }, + { nullptr } +}; + +static const mozilla::Module::CategoryEntry kStorageCategories[] = { + { "idle-daily", "MozStorage Vacuum Manager", VACUUMMANAGER_CONTRACTID }, + { nullptr } +}; + +static const mozilla::Module kStorageModule = { + mozilla::Module::kVersion, + kStorageCIDs, + kStorageContracts, + kStorageCategories +}; + +NSMODULE_DEFN(mozStorageModule) = &kStorageModule; |