#include "CommEntity.h"
#include "TcpEntity.h"

std::shared_ptr<CommEntity> CommEntity::create(Fields& data)
{
    std::string commType = data.value("commType");
    std::string ip = data.value("ip");
    int port = data.get<int>("port");
    int isclient = data.get<int>("isclient");

    if (commType == "TCP")
    {
        auto entity = std::make_shared<TcpEntity>();
        entity->setAddr(ip, port, isclient);
        return entity;
    }
    else if (commType == "MODBUS")
    {
    }
    else if (commType == "ACTIVEX")
    {
    }
    else if (commType == "SDK")
    {
    }

    return nullptr;
}