MockContentFilterSettings.h [plain text]
#ifndef MockContentFilterSettings_h
#define MockContentFilterSettings_h
#include <wtf/NeverDestroyed.h>
#include <wtf/text/WTFString.h>
namespace WebCore {
class MockContentFilterSettings {
friend class NeverDestroyed<MockContentFilterSettings>;
public:
enum class DecisionPoint {
AfterWillSendRequest,
AfterRedirect,
AfterResponse,
AfterAddData,
AfterFinishedAddingData,
Never
};
enum class Decision {
Allow,
Block
};
WTF_EXPORT_PRIVATE static MockContentFilterSettings& singleton();
static void reset();
static const char* unblockURLHost() { return "mock-unblock"; }
void ref() { }
void deref() { }
bool enabled() const { return m_enabled; }
WTF_EXPORT_PRIVATE void setEnabled(bool);
const String& blockedString() const { return m_blockedString; }
void setBlockedString(const String& blockedString) { m_blockedString = blockedString; }
DecisionPoint decisionPoint() const { return m_decisionPoint; }
void setDecisionPoint(DecisionPoint decisionPoint) { m_decisionPoint = decisionPoint; }
Decision decision() const { return m_decision; }
void setDecision(Decision decision) { m_decision = decision; }
Decision unblockRequestDecision() const { return m_unblockRequestDecision; }
void setUnblockRequestDecision(Decision unblockRequestDecision) { m_unblockRequestDecision = unblockRequestDecision; }
const String& unblockRequestURL() const;
const String& modifiedRequestURL() const { return m_modifiedRequestURL; }
void setModifiedRequestURL(const String& modifiedRequestURL) { m_modifiedRequestURL = modifiedRequestURL; }
private:
MockContentFilterSettings() = default;
MockContentFilterSettings(const MockContentFilterSettings&) = delete;
MockContentFilterSettings& operator=(const MockContentFilterSettings&) = default;
bool m_enabled { false };
DecisionPoint m_decisionPoint { DecisionPoint::AfterResponse };
Decision m_decision { Decision::Allow };
Decision m_unblockRequestDecision { Decision::Block };
String m_blockedString;
String m_modifiedRequestURL;
};
}
#endif // MockContentFilterSettings_h