#ifndef CONTENT_PUBLIC_BROWSER_DEVTOOLS_BACKGROUND_SERVICES_CONTEXT_H_
#define CONTENT_PUBLIC_BROWSER_DEVTOOLS_BACKGROUND_SERVICES_CONTEXT_H_
#include <stdint.h>
#include <map>
#include <string>
#include "content/common/content_export.h"
namespace blink {
class StorageKey;
}
namespace content {
enum class DevToolsBackgroundService {
kBackgroundFetch = 2,
kBackgroundSync = 3,
kPushMessaging = 4,
kNotifications = 5,
kPaymentHandler = 6,
kPeriodicBackgroundSync = 7,
kMaxValue = kPeriodicBackgroundSync,
};
class CONTENT_EXPORT DevToolsBackgroundServicesContext {
public:
DevToolsBackgroundServicesContext() = default;
DevToolsBackgroundServicesContext(const DevToolsBackgroundServicesContext&) =
delete;
DevToolsBackgroundServicesContext& operator=(
const DevToolsBackgroundServicesContext&) = delete;
virtual ~DevToolsBackgroundServicesContext() = default;
virtual bool IsRecording(DevToolsBackgroundService service) = 0;
virtual void LogBackgroundServiceEvent(
uint64_t service_worker_registration_id,
blink::StorageKey storage_key,
DevToolsBackgroundService service,
const std::string& event_name,
const std::string& instance_id,
const std::map<std::string, std::string>& event_metadata) = 0;
};
}
#endif