summaryrefslogtreecommitdiffstats
path: root/veslibrary/ves_cpplibrary/src/lib/encode/XVendorNfNameFieldsImp.cpp
blob: a0bc12f802ef4d197563b4a8fc4bb20c7f423eaa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include "XVendorNfNameFieldsImp.h"

XVendorNfNameFieldsImp::XVendorNfNameFieldsImp(const XString& vendorName):
        vendorName_(vendorName)
{

}

void XVendorNfNameFieldsImp::setNfModuleName(const XString& nfModuleName)
{
    comVals_["nfModuleName"] = nfModuleName;
}
            
void XVendorNfNameFieldsImp::setNfName(const XString& nfName)
{
    comVals_["nfName"] = nfName;
}
            
void XVendorNfNameFieldsImp::setVendorName(const XString& vendorName)
{
    comVals_["vendorName"] = vendorName;
}

json XVendorNfNameFieldsImp::toJson()
{
    try
    {
        if (vendorName_.empty())
        {
            return json();
        }

        json field = {
            {"vendorName", vendorName_}
        };

        //optional val
        
        field = mergeCommonValues(field, comVals_);

        return field;
    }
    catch (json::exception& e)
    {
        SPDLOG_ERROR("Fail to build XVendorNfNameFields to json object:{}.", e.what());
        return json();
    }
}