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

* Author:            wanzhongping
* Date:              2021-10-27 15:30:25
* Email:             zhongpingw@chinadci.com
* copyright:         广州城市信息研究所有限公司
***************************************************************************/

#ifndef __dmpserver_h__
#define __dmpserver_h__

#include "dmap_server.h"
#include <string>
#include <vector>
#include "dmpservercontext.h"
#include "dmpproject.h"

class SERVER_EXPORT DmpServer
{
public:
    // DmpServer();
    virtual ~DmpServer() = default;
    virtual std::string name() const = 0;
    virtual std::string alias() const = 0;
    virtual std::string path() const = 0;
    virtual std::string capability() const = 0;
    virtual bool accept(const std::string &url);
    virtual void executeRequest(DmpServerRequest &request, DmpServerResponse &response) = 0; 
    
    virtual bool publish(const std::string &serviceName, const std::string &title, unsigned int capability, const DmpProject &project);
    virtual bool remove(const std::string &serviceName);
    virtual bool start(const std::string &serviceName);
    virtual bool stop(const std::string &serviceName);    
};

#endif // __dmpserver_h__