dmpserverinterfaceimpl.h 1.3 KB
/**************************************************************************
* file:              dmpserverinterfaceimpl.h

* Author:            wanzhongping
* Date:              2021-03-09 14:28:09
* Email:             zhongpingw@chinadci.com
* copyright:         广州城市信息研究所有限公司
***************************************************************************/

#ifndef __dmpserverinterfaceimpl_h__
#define __dmpserverinterfaceimpl_h__

#include "dmpserverinterface.h"
#include "dmprequesthandler.h"
#include "dmpserverfilter.h"

class SERVER_EXPORT DmpServerInterfaceImpl : public DmpServerInterface
{
  public:

    DmpServerInterfaceImpl( DmpServiceRegistry *srv_registry );
    // DmpServerInterfaceImpl();
    ~DmpServerInterfaceImpl() override;
  
    DmpRequestHandler  *RequestHandler() override { return request_handler_; }
    void SetRequestHandler( DmpRequestHandler *request_handler ) override;
    void RegisterFilter(DmpServerFilter *filter, int priority = 0 ) override;
    void SetFilters( DmpServerFiltersMap *filters ) override;
    DmpServiceRegistry *ServiceRegistry() override { return service_registry_;}

  private:
    DmpRequestHandler *request_handler_ = nullptr;
    DmpServiceRegistry *service_registry_ = nullptr;
};

#endif //__dmpserverinterfaceimpl_h__