use of org.openkilda.model.SwitchPortStats in project open-kilda by telstra.
the class StatsService method getSwitchPortsStats.
/**
* Gets the switch ports stats.
*
* @param startDate
* the start date
* @param endDate
* the end date
* @param downSample
* the down sample
* @param switchId
* the switch id
* @return the switch ports stats
*/
public List<PortInfo> getSwitchPortsStats(String startDate, String endDate, String downSample, String switchId) {
List<String> switchIds = Arrays.asList(switchId);
List<SwitchPortStats> switchPortStats = new ArrayList<SwitchPortStats>();
try {
String result = statsIntegrationService.getStats(startDate, endDate, downSample, switchIds, null, null, null, null, null, null, StatsType.SWITCH_PORT, null, null);
ObjectMapper mapper = new ObjectMapper();
switchPortStats = mapper.readValue(result, TypeFactory.defaultInstance().constructCollectionLikeType(List.class, SwitchPortStats.class));
} catch (Exception e) {
LOGGER.error("Error occurred while retriving switch port stats", e);
}
List<PortInfo> portStats = getSwitchPortStatsReport(switchPortStats, switchId);
if (storeService.getSwitchStoreConfig().getUrls().size() > 0) {
if (!CollectionUtil.isEmpty(switchIds)) {
try {
List<Port> inventoryPorts = switchStoreService.getSwitchPort(IoUtil.switchCodeToSwitchId(switchIds.get(0)));
processInventoryPorts(portStats, inventoryPorts);
} catch (Exception ex) {
LOGGER.error("Error occurred while retriving switch ports stats for inventory", ex);
}
}
}
return portStats;
}
Aggregations