+/*
+ * Copyright IBM Corporation, 2013. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
package org.opendaylight.controller.md.statistics.manager;
+import java.util.HashMap;
import java.util.List;
-
-import org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.group.desc.response.GroupDescStats;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.group.stats.response.GroupStatistics;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.statistics.rev130819.aggregate.flow.statistics.AggregateFlowStatistics;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.queue.rev130925.QueueId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.group.features.GroupFeatures;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.desc.stats.reply.GroupDescStats;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.statistics.reply.GroupStats;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeRef;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.statistics.rev131111.meter.config.response.MeterConfigStats;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.statistics.rev131111.meter.stats.response.MeterStatistics;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.statistics.rev131111.nodes.node.MeterFeatures;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.config.stats.reply.MeterConfigStats;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.statistics.reply.MeterStats;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.GenericQueueStatistics;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.GenericStatistics;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.GenericTableStatistics;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.NodeConnectorStatistics;
public class NodeStatistics {
private NodeRef targetNode;
- private List<GroupStatistics> groupStatistics;
+ private List<GroupStats> groupStatistics;
- private List<MeterStatistics> meterStatistics;
+ private List<MeterStats> meterStatistics;
private List<GroupDescStats> groupDescStats;
private List<MeterConfigStats> meterConfigStats;
- private List<org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.features.GroupFeatures> groupFeatures;
+ private GroupFeatures groupFeatures;
+
+ private MeterFeatures meterFeatures;
+
+ private final Map<Short,Map<Flow,GenericStatistics>> flowAndStatsMap=
+ new HashMap<Short,Map<Flow,GenericStatistics>>();
+
+ private final Map<Short,AggregateFlowStatistics> tableAndAggregateFlowStatsMap =
+ new HashMap<Short,AggregateFlowStatistics>();
- private List<org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.features.MeterFeatures> meterFeatures;
+ private final Map<NodeConnectorId,NodeConnectorStatistics> nodeConnectorStats =
+ new ConcurrentHashMap<NodeConnectorId,NodeConnectorStatistics>();
+
+ private final Map<Short,GenericTableStatistics> flowTableAndStatisticsMap =
+ new HashMap<Short,GenericTableStatistics>();
+
+ private final Map<NodeConnectorId,Map<QueueId,GenericQueueStatistics>> NodeConnectorAndQueuesStatsMap =
+ new HashMap<NodeConnectorId,Map<QueueId,GenericQueueStatistics>>();
public NodeStatistics(){
this.targetNode = targetNode;
}
- public List<GroupStatistics> getGroupStatistics() {
+ public List<GroupStats> getGroupStatistics() {
return groupStatistics;
}
- public void setGroupStatistics(List<GroupStatistics> groupStatistics) {
+ public void setGroupStatistics(List<GroupStats> groupStatistics) {
this.groupStatistics = groupStatistics;
}
- public List<MeterStatistics> getMeterStatistics() {
+ public List<MeterStats> getMeterStatistics() {
return meterStatistics;
}
- public void setMeterStatistics(List<MeterStatistics> meterStatistics) {
+ public void setMeterStatistics(List<MeterStats> meterStatistics) {
this.meterStatistics = meterStatistics;
}
this.meterConfigStats = meterConfigStats;
}
- public List<org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.features.GroupFeatures> getGroupFeatures() {
+ public GroupFeatures getGroupFeatures() {
return groupFeatures;
}
- public void setGroupFeatures(
- List<org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.features.GroupFeatures> groupFeatures) {
+ public void setGroupFeatures(GroupFeatures groupFeatures) {
this.groupFeatures = groupFeatures;
}
- public List<org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.features.MeterFeatures> getMeterFeatures() {
+ public MeterFeatures getMeterFeatures() {
return meterFeatures;
}
- public void setMeterFeatures(
- List<org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.features.MeterFeatures> meterFeatures) {
+ public void setMeterFeatures(MeterFeatures meterFeatures) {
this.meterFeatures = meterFeatures;
}
-
+
+ public Map<Short,Map<Flow,GenericStatistics>> getFlowAndStatsMap() {
+ return flowAndStatsMap;
+ }
+
+ public Map<Short, GenericTableStatistics> getFlowTableAndStatisticsMap() {
+ return flowTableAndStatisticsMap;
+ }
+
+ public Map<Short, AggregateFlowStatistics> getTableAndAggregateFlowStatsMap() {
+ return tableAndAggregateFlowStatsMap;
+ }
+ public Map<NodeConnectorId, NodeConnectorStatistics> getNodeConnectorStats() {
+ return nodeConnectorStats;
+ }
+
+ public Map<NodeConnectorId, Map<QueueId, GenericQueueStatistics>> getNodeConnectorAndQueuesStatsMap() {
+ return NodeConnectorAndQueuesStatsMap;
+ }
}