# -*- 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/.

Classes = [
    {
        'cid': '{3c9c43b6-09eb-4ed2-9b87-e29f4221eef0}',
        'contract_ids': ['@mozilla.org/tracking-db-service;1'],
        'esModule': 'resource://gre/modules/TrackingDBService.sys.mjs',
        'constructor': 'TrackingDBService',
    },
    {
        'cid': '{90d1fd17-2018-4e16-b73c-a04a26fa6dd4}',
        'contract_ids': ['@mozilla.org/purge-tracker-service;1'],
        'esModule': 'resource://gre/modules/PurgeTrackerService.sys.mjs',
        'constructor': 'PurgeTrackerService',
        'categories': {'profile-after-change': 'PurgeTrackerService'},
    },
    {
        'cid': '{ab94809d-33f0-4f28-af38-01efbd3baf22}',
        'contract_ids': ['@mozilla.org/partitioning/exception-list-service;1'],
        'esModule': 'resource://gre/modules/PartitioningExceptionListService.sys.mjs',
        'constructor': 'PartitioningExceptionListService',
    },
    {
        'cid': '{42906796-d16a-44a1-b518-0f108ab38eba}',
        'contract_ids': ['@mozilla.org/content-blocking-telemetry-service;1'],
        'singleton': True,
        'type': 'mozilla::ContentBlockingTelemetryService',
        'headers': ['mozilla/ContentBlockingTelemetryService.h'],
        'constructor': 'mozilla::ContentBlockingTelemetryService::GetSingleton',
        'categories': {'idle-daily': 'ContentBlockingTelemetryService'},
        'processes': ProcessSelector.MAIN_PROCESS_ONLY,
    },
    {
        'cid': '{afff16f0-3fd2-4153-9ccd-c6d9abd879e4}',
        'contract_ids': ['@mozilla.org/query-stripping-list-service;1'],
        'singleton': True,
        'esModule': 'resource://gre/modules/URLQueryStrippingListService.sys.mjs',
        'constructor': 'URLQueryStrippingListService',
    },
    {
        'name': 'URLQueryStringStripper',
        'cid': '{6b42a890-2624-4560-99c4-b25380e8cd77}',
        'interfaces': ['nsIURLQueryStringStripper'],
        'contract_ids': ['@mozilla.org/url-query-string-stripper;1'],
        'type': 'mozilla::URLQueryStringStripper',
        'headers': ['mozilla/URLQueryStringStripper.h'],
        'singleton': True,
        'constructor': 'mozilla::URLQueryStringStripper::GetSingleton',
        'categories': {
            'profile-after-change': 'URLQueryStringStripper',
        }
    },
]
