For deleting of meter, group and flow statistics was used attitude,
where node id was get from statistic data.
This patch changed it to get node id from device context.
Change-Id: I0dbad1c246347b3fd9be7a097adda9c2c2f10bd1
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
}
private static void processFlowStatistics(final Iterable<FlowsStatisticsUpdate> data, final DeviceContext deviceContext) {
}
private static void processFlowStatistics(final Iterable<FlowsStatisticsUpdate> data, final DeviceContext deviceContext) {
- boolean isFirstLoop = true;
+ final NodeId nodeId = deviceContext.getDeviceState().getNodeId();
+ final InstanceIdentifier<Node> nodeIdent = InstanceIdentifier.create(Nodes.class)
+ .child(Node.class, new NodeKey(nodeId));
+ deleteAllKnownFlows(deviceContext, nodeIdent);
for (final FlowsStatisticsUpdate flowsStatistics : data) {
for (final FlowsStatisticsUpdate flowsStatistics : data) {
- if (isFirstLoop) {
- final InstanceIdentifier<Node> nodeIdent = InstanceIdentifier.create(Nodes.class)
- .child(Node.class, new NodeKey(flowsStatistics.getId()));
- deleteAllKnownFlows(deviceContext, nodeIdent);
- isFirstLoop = false;
- }
for (final FlowAndStatisticsMapList flowStat : flowsStatistics.getFlowAndStatisticsMapList()) {
final FlowBuilder flowBuilder = new FlowBuilder(flowStat);
FlowId flowId = null;
for (final FlowAndStatisticsMapList flowStat : flowsStatistics.getFlowAndStatisticsMapList()) {
final FlowBuilder flowBuilder = new FlowBuilder(flowStat);
FlowId flowId = null;
private static void processMetersStatistics(final Iterable<MeterStatisticsUpdated> data,
final DeviceContext deviceContext) {
private static void processMetersStatistics(final Iterable<MeterStatisticsUpdated> data,
final DeviceContext deviceContext) {
- boolean isFirstLoop = true;
+ NodeId nodeId = deviceContext.getDeviceState().getNodeId();
+ final InstanceIdentifier<FlowCapableNode> fNodeIdent = getFlowCapableNodeInstanceIdentifier(nodeId);
+ deleteAllKnownMeters(deviceContext, fNodeIdent);
for (MeterStatisticsUpdated meterStatisticsUpdated : data) {
for (MeterStatisticsUpdated meterStatisticsUpdated : data) {
- final InstanceIdentifier<FlowCapableNode> fNodeIdent = getFlowCapableNodeInstanceIdentifier(meterStatisticsUpdated.getId());
- if (isFirstLoop) {
- deleteAllKnownMeters(deviceContext, fNodeIdent);
- isFirstLoop = false;
- }
for (final MeterStats mStat : meterStatisticsUpdated.getMeterStats()) {
final MeterStatistics stats = new MeterStatisticsBuilder(mStat).build();
final MeterId meterId = mStat.getMeterId();
for (final MeterStats mStat : meterStatisticsUpdated.getMeterStats()) {
final MeterStatistics stats = new MeterStatisticsBuilder(mStat).build();
final MeterId meterId = mStat.getMeterId();
}
private static void processGroupStatistics(final Iterable<GroupStatisticsUpdated> data, final DeviceContext deviceContext) {
}
private static void processGroupStatistics(final Iterable<GroupStatisticsUpdated> data, final DeviceContext deviceContext) {
- boolean isFirstLoop = true;
+ NodeId nodeId = deviceContext.getDeviceState().getNodeId();
+ final InstanceIdentifier<FlowCapableNode> fNodeIdent = getFlowCapableNodeInstanceIdentifier(nodeId);
+ deleteAllKnownGroups(deviceContext, fNodeIdent);
for (GroupStatisticsUpdated groupStatistics : data) {
for (GroupStatisticsUpdated groupStatistics : data) {
- NodeId nodeId = groupStatistics.getId();
- final InstanceIdentifier<FlowCapableNode> fNodeIdent = getFlowCapableNodeInstanceIdentifier(nodeId);
- if (isFirstLoop) {
- deleteAllKnownGroups(deviceContext, fNodeIdent);
- isFirstLoop = false;
- }
-
for (final GroupStats groupStats : groupStatistics.getGroupStats()) {
final InstanceIdentifier<Group> groupIdent = fNodeIdent.child(Group.class, new GroupKey(groupStats.getGroupId()));
for (final GroupStats groupStats : groupStatistics.getGroupStats()) {
final InstanceIdentifier<Group> groupIdent = fNodeIdent.child(Group.class, new GroupKey(groupStats.getGroupId()));