in source/code/plugins/in_npmd_server.rb [344:381]
def is_valid_dataitem(item)
_itemType=""
if item["SubType"] == "NetworkAgent"
_itemType = NPMContract::DATAITEM_AGENT
elsif item["SubType"] == "NetworkPath"
_itemType = NPMContract::DATAITEM_PATH
elsif item["SubType"] == NPM_DIAG
_itemType = NPMContract::DATAITEM_DIAG
elsif item["SubType"] == "EndpointHealth"
_itemType = NPMContract::DATAITEM_ENDPOINT_HEALTH
elsif item["SubType"] == "EndpointPath"
_itemType = NPMContract::DATAITEM_ENDPOINT_MONITORING
elsif item["SubType"] == "EndpointDiagnostics"
_itemType = NPMContract::DATAITEM_ENDPOINT_DIAGNOSTICS
elsif item["SubType"] == "ExpressRoutePath"
_itemType = NPMContract::DATAITEM_EXROUTE_MONITORING
elsif item["SubType"] == "ConnectionMonitorTestResult"
_itemType = NPMContract::DATAITEM_CONNECTIONMONITOR_TEST
elsif item["SubType"] == "ConnectionMonitorPath"
_itemType = NPMContract::DATAITEM_CONNECTIONMONITOR_PATH
elsif item["SubType"] == "NetworkAgentDiagnostics"
_itemType = NPMContract::DATAITEM_AGENT_DIAGNOSTICS
end
return false if _itemType.empty?
_res, _prob = NPMContract::IsValidDataitem(item, _itemType)
return true if _res == NPMContract::DATAITEM_VALID
if (_res == NPMContract::DATAITEM_ERR_INVALID_FIELDS)
Logger::logInfo "Invalid key in #{item["SubType"]} data: #{_prob}"
elsif (_res == NPMContract::DATAITEM_ERR_MISSING_FIELDS)
Logger::logInfo "Key #{_prob} absent in #{item["SubType"]} data"
elsif (_res == NPMContract::DATAITEM_ERR_INVALID_TYPE)
Logger::logInfo "Invalid itemtype #{_itemType}"
end
end