#ifndef _QUERY_ANALYZER_INCLUDE
#define _QUERY_ANALYZER_INCLUDE

#include <iostream>
#include <memory>
#include <string>

#include <Poco/Logger.h>
#include <grpcpp/grpcpp.h>
#include <grpcpp/health_check_service_interface.h>
#include <grpcpp/ext/proto_server_reflection_plugin.h>
#include "query_analyzer.grpc.pb.h"
#include "redis_manage.h"

using grpc::Server;
using grpc::ServerBuilder;
using grpc::ServerContext;
using grpc::Status;
using QueryAnalyzer::QueryInferenceService;
using QueryAnalyzer::QueryInferenceRequest;
using QueryAnalyzer::QueryInferenceReply;
using Poco::Logger;


class QueryAnalyzerImpl final : public QueryInferenceService::Service{

public:
	QueryAnalyzerImpl();
	Status QueryInferenceService(ServerContext* context,const QueryInferenceRequest *request,QueryInferenceReply *reply);

private:
	RedisManage *_pRedis;
	Logger &_logger;
};


#endif
