Copy as Markdown
Other Tools
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/toolkit/components/resistfingerprinting/nsIRFPService.idl
*/
#ifndef __gen_nsIRFPService_h__
#define __gen_nsIRFPService_h__
#include "nsISupports.h"
#include "nsIFingerprintingWebCompatService.h"
#include "nsTArray.h"
#include "js/Value.h"
/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIPrincipal; /* forward declaration */
class nsIChannel; /* forward declaration */
/* starting interface: nsIRFPService */
#define NS_IRFPSERVICE_IID_STR "20093b2e-d5d5-4ce0-8355-96b8d2dc7ff5"
#define NS_IRFPSERVICE_IID \
{0x20093b2e, 0xd5d5, 0x4ce0, \
{ 0x83, 0x55, 0x96, 0xb8, 0xd2, 0xdc, 0x7f, 0xf5 }}
class NS_NO_VTABLE nsIRFPService : public nsISupports {
public:
NS_DECLARE_STATIC_IID_ACCESSOR(NS_IRFPSERVICE_IID)
/* Used by ToJSValue to check which scriptable interface is implemented. */
using ScriptableInterfaceType = nsIRFPService;
/* void setFingerprintingOverrides (in Array<nsIFingerprintingOverride> aOverrides); */
NS_IMETHOD SetFingerprintingOverrides(const nsTArray<RefPtr<nsIFingerprintingOverride>>& aOverrides) = 0;
/* uint64_t getFingerprintingOverrides (in ACString aDomainKey); */
NS_IMETHOD GetFingerprintingOverrides(const nsACString& aDomainKey, uint64_t *_retval) = 0;
/* void cleanAllOverrides (); */
NS_IMETHOD CleanAllOverrides(void) = 0;
/* readonly attribute uint64_t enabledFingerprintingProtections; */
NS_IMETHOD GetEnabledFingerprintingProtections(uint64_t *aEnabledFingerprintingProtections) = 0;
/* void cleanAllRandomKeys (); */
NS_IMETHOD CleanAllRandomKeys(void) = 0;
/* void cleanRandomKeyByPrincipal (in nsIPrincipal aPrincipal); */
NS_IMETHOD CleanRandomKeyByPrincipal(nsIPrincipal *aPrincipal) = 0;
/* [implicit_jscontext] void cleanRandomKeyBySite (in ACString aSchemelessSite, in jsval originAttributes); */
NS_IMETHOD CleanRandomKeyBySite(const nsACString& aSchemelessSite, JS::Handle<JS::Value> originAttributes, JSContext* cx) = 0;
/* void cleanRandomKeyByHost (in ACString aHost, in AString aPattern); */
NS_IMETHOD CleanRandomKeyByHost(const nsACString& aHost, const nsAString& aPattern) = 0;
/* void cleanRandomKeyByOriginAttributesPattern (in AString aPattern); */
NS_IMETHOD CleanRandomKeyByOriginAttributesPattern(const nsAString& aPattern) = 0;
/* Array<uint8_t> testGenerateRandomKey (in nsIChannel aChannel); */
NS_IMETHOD TestGenerateRandomKey(nsIChannel *aChannel, nsTArray<uint8_t >& _retval) = 0;
};
NS_DEFINE_STATIC_IID_ACCESSOR(nsIRFPService, NS_IRFPSERVICE_IID)
/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIRFPSERVICE \
NS_IMETHOD SetFingerprintingOverrides(const nsTArray<RefPtr<nsIFingerprintingOverride>>& aOverrides) override; \
NS_IMETHOD GetFingerprintingOverrides(const nsACString& aDomainKey, uint64_t *_retval) override; \
NS_IMETHOD CleanAllOverrides(void) override; \
NS_IMETHOD GetEnabledFingerprintingProtections(uint64_t *aEnabledFingerprintingProtections) override; \
NS_IMETHOD CleanAllRandomKeys(void) override; \
NS_IMETHOD CleanRandomKeyByPrincipal(nsIPrincipal *aPrincipal) override; \
NS_IMETHOD CleanRandomKeyBySite(const nsACString& aSchemelessSite, JS::Handle<JS::Value> originAttributes, JSContext* cx) override; \
NS_IMETHOD CleanRandomKeyByHost(const nsACString& aHost, const nsAString& aPattern) override; \
NS_IMETHOD CleanRandomKeyByOriginAttributesPattern(const nsAString& aPattern) override; \
NS_IMETHOD TestGenerateRandomKey(nsIChannel *aChannel, nsTArray<uint8_t >& _retval) override;
/* Use this macro when declaring the members of this interface when the
class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIRFPSERVICE \
nsresult SetFingerprintingOverrides(const nsTArray<RefPtr<nsIFingerprintingOverride>>& aOverrides); \
nsresult GetFingerprintingOverrides(const nsACString& aDomainKey, uint64_t *_retval); \
nsresult CleanAllOverrides(void); \
nsresult GetEnabledFingerprintingProtections(uint64_t *aEnabledFingerprintingProtections); \
nsresult CleanAllRandomKeys(void); \
nsresult CleanRandomKeyByPrincipal(nsIPrincipal *aPrincipal); \
nsresult CleanRandomKeyBySite(const nsACString& aSchemelessSite, JS::Handle<JS::Value> originAttributes, JSContext* cx); \
nsresult CleanRandomKeyByHost(const nsACString& aHost, const nsAString& aPattern); \
nsresult CleanRandomKeyByOriginAttributesPattern(const nsAString& aPattern); \
nsresult TestGenerateRandomKey(nsIChannel *aChannel, nsTArray<uint8_t >& _retval);
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIRFPSERVICE(_to) \
NS_IMETHOD SetFingerprintingOverrides(const nsTArray<RefPtr<nsIFingerprintingOverride>>& aOverrides) override { return _to SetFingerprintingOverrides(aOverrides); } \
NS_IMETHOD GetFingerprintingOverrides(const nsACString& aDomainKey, uint64_t *_retval) override { return _to GetFingerprintingOverrides(aDomainKey, _retval); } \
NS_IMETHOD CleanAllOverrides(void) override { return _to CleanAllOverrides(); } \
NS_IMETHOD GetEnabledFingerprintingProtections(uint64_t *aEnabledFingerprintingProtections) override { return _to GetEnabledFingerprintingProtections(aEnabledFingerprintingProtections); } \
NS_IMETHOD CleanAllRandomKeys(void) override { return _to CleanAllRandomKeys(); } \
NS_IMETHOD CleanRandomKeyByPrincipal(nsIPrincipal *aPrincipal) override { return _to CleanRandomKeyByPrincipal(aPrincipal); } \
NS_IMETHOD CleanRandomKeyBySite(const nsACString& aSchemelessSite, JS::Handle<JS::Value> originAttributes, JSContext* cx) override { return _to CleanRandomKeyBySite(aSchemelessSite, originAttributes, cx); } \
NS_IMETHOD CleanRandomKeyByHost(const nsACString& aHost, const nsAString& aPattern) override { return _to CleanRandomKeyByHost(aHost, aPattern); } \
NS_IMETHOD CleanRandomKeyByOriginAttributesPattern(const nsAString& aPattern) override { return _to CleanRandomKeyByOriginAttributesPattern(aPattern); } \
NS_IMETHOD TestGenerateRandomKey(nsIChannel *aChannel, nsTArray<uint8_t >& _retval) override { return _to TestGenerateRandomKey(aChannel, _retval); }
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIRFPSERVICE(_to) \
NS_IMETHOD SetFingerprintingOverrides(const nsTArray<RefPtr<nsIFingerprintingOverride>>& aOverrides) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFingerprintingOverrides(aOverrides); } \
NS_IMETHOD GetFingerprintingOverrides(const nsACString& aDomainKey, uint64_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFingerprintingOverrides(aDomainKey, _retval); } \
NS_IMETHOD CleanAllOverrides(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CleanAllOverrides(); } \
NS_IMETHOD GetEnabledFingerprintingProtections(uint64_t *aEnabledFingerprintingProtections) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetEnabledFingerprintingProtections(aEnabledFingerprintingProtections); } \
NS_IMETHOD CleanAllRandomKeys(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CleanAllRandomKeys(); } \
NS_IMETHOD CleanRandomKeyByPrincipal(nsIPrincipal *aPrincipal) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CleanRandomKeyByPrincipal(aPrincipal); } \
NS_IMETHOD CleanRandomKeyBySite(const nsACString& aSchemelessSite, JS::Handle<JS::Value> originAttributes, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CleanRandomKeyBySite(aSchemelessSite, originAttributes, cx); } \
NS_IMETHOD CleanRandomKeyByHost(const nsACString& aHost, const nsAString& aPattern) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CleanRandomKeyByHost(aHost, aPattern); } \
NS_IMETHOD CleanRandomKeyByOriginAttributesPattern(const nsAString& aPattern) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CleanRandomKeyByOriginAttributesPattern(aPattern); } \
NS_IMETHOD TestGenerateRandomKey(nsIChannel *aChannel, nsTArray<uint8_t >& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestGenerateRandomKey(aChannel, _retval); }
#endif /* __gen_nsIRFPService_h__ */