#pragma once

#include <balancer/modules/cookie_policy/common/cookie_policy.h>

namespace NModCookiePolicy {
    class TPolicyProtectedCookie final : public TNameMatchPolicyBase {
    public:
        TPolicyProtectedCookie(TString name, const TPolicyProtectedCookieCfg& cfg);

    private:
        bool MatchRequest(const TPolicyArgs& args) const noexcept override;

        TMaybe<TAction> ApplyToResponseCookie(TResponseCookieView c, const TPolicyArgs& args) const noexcept override;

    private:
        TDomainFilter DomainsFilter_;
    };

}
