dmpserverinterface.h 1.1 KB
 
/**************************************************************************
* file:              dmpserverinterface.h

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

#ifndef __dmpserverinterface_h__
#define __dmpserverinterface_h__

#include "dmap_server.h"
#include "dmpserverfilter.h"
#include "dmpserviceregistry.h"
#include "dmprequesthandler.h"

class SERVER_EXPORT DmpServerInterface 
{
public:
    DmpServerInterface();

    virtual ~DmpServerInterface() = default;

    virtual DmpRequestHandler *RequestHandler() = 0;

    virtual void SetRequestHandler(DmpRequestHandler *requestHandler);

    virtual void SetFilters(DmpServerFiltersMap *filters) ;

    virtual void RegisterFilter( DmpServerFilter *filter, int priority = 0 ) = 0;

    virtual DmpServiceRegistry *ServiceRegistry() = 0;

    virtual DmpServerFiltersMap Filters(){ return filters_;}

protected:
    
    DmpServerFiltersMap filters_;
};


#endif //__dmpserverinterface_h__