#pragma once

#include <kernel/searchlog/searchlog.h>
#include <saas/library/searchserver/replier.h>

class ISearchContext;
struct TPassageRequestInfo;

namespace NSearchProxy {

    namespace NLogging {

        class TIncomingLog: public TSearchLog {
        public:
            TIncomingLog(const TString& logType, ELogPriority priority = LOG_MAX_PRIORITY, size_t queueLen = 0)
                : TSearchLog(logType, priority, queueLen)
            {

            }

            static void Log(ui32 id, ISearchContext* searchContext);
            static void Log(ui32 id, const TPassageRequestInfo& passageInfo);
            static void Log(ui32 id, const IReplyContext& context);
        };

    }
}
