a659a4088695ce392471dba4c1c81cabc72d8d81
[controller.git] / opendaylight / md-sal / statistics-manager / src / main / java / org / opendaylight / controller / md / statistics / manager / NodeStatistics.java
1 /*
2  * Copyright IBM Corporation, 2013.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.controller.md.statistics.manager;
9
10 import java.util.HashMap;
11 import java.util.List;
12 import java.util.Map;
13 import java.util.concurrent.ConcurrentHashMap;
14
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.statistics.rev130819.aggregate.flow.statistics.AggregateFlowStatistics;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.group.features.GroupFeatures;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.desc.stats.reply.GroupDescStats;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.statistics.reply.GroupStats;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId;
21 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeRef;
22 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.statistics.rev131111.nodes.node.MeterFeatures;
23 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.config.stats.reply.MeterConfigStats;
24 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.statistics.reply.MeterStats;
25 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.GenericStatistics;
26 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.GenericTableStatistics;
27 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.statistics.types.rev130925.NodeConnectorStatistics;
28
29 public class NodeStatistics {
30
31     private NodeRef targetNode;
32     
33     private List<GroupStats> groupStatistics;
34     
35     private List<MeterStats> meterStatistics;
36     
37     private List<GroupDescStats> groupDescStats;
38     
39     private List<MeterConfigStats> meterConfigStats;
40     
41     private GroupFeatures groupFeatures;
42     
43     private MeterFeatures meterFeatures;
44     
45     private final Map<Short,Map<Flow,GenericStatistics>> flowAndStatsMap= 
46             new HashMap<Short,Map<Flow,GenericStatistics>>();
47     
48     private final Map<Short,AggregateFlowStatistics> tableAndAggregateFlowStatsMap = 
49             new HashMap<Short,AggregateFlowStatistics>();
50     
51     private final Map<NodeConnectorId,NodeConnectorStatistics> nodeConnectorStats = 
52             new ConcurrentHashMap<NodeConnectorId,NodeConnectorStatistics>();
53     
54     private final Map<Short,GenericTableStatistics> flowTableAndStatisticsMap = 
55             new HashMap<Short,GenericTableStatistics>();
56     
57     public NodeStatistics(){
58         
59     }
60
61     public NodeRef getTargetNode() {
62         return targetNode;
63     }
64
65     public void setTargetNode(NodeRef targetNode) {
66         this.targetNode = targetNode;
67     }
68
69     public List<GroupStats> getGroupStatistics() {
70         return groupStatistics;
71     }
72
73     public void setGroupStatistics(List<GroupStats> groupStatistics) {
74         this.groupStatistics = groupStatistics;
75     }
76
77     public List<MeterStats> getMeterStatistics() {
78         return meterStatistics;
79     }
80
81     public void setMeterStatistics(List<MeterStats> meterStatistics) {
82         this.meterStatistics = meterStatistics;
83     }
84
85     public List<GroupDescStats> getGroupDescStats() {
86         return groupDescStats;
87     }
88
89     public void setGroupDescStats(List<GroupDescStats> groupDescStats) {
90         this.groupDescStats = groupDescStats;
91     }
92
93     public List<MeterConfigStats> getMeterConfigStats() {
94         return meterConfigStats;
95     }
96
97     public void setMeterConfigStats(List<MeterConfigStats> meterConfigStats) {
98         this.meterConfigStats = meterConfigStats;
99     }
100
101     public GroupFeatures getGroupFeatures() {
102         return groupFeatures;
103     }
104
105     public void setGroupFeatures(GroupFeatures groupFeatures) {
106         this.groupFeatures = groupFeatures;
107     }
108
109     public MeterFeatures getMeterFeatures() {
110         return meterFeatures;
111     }
112
113     public void setMeterFeatures(MeterFeatures meterFeatures) {
114         this.meterFeatures = meterFeatures;
115     }
116
117     public Map<Short,Map<Flow,GenericStatistics>> getFlowAndStatsMap() {
118         return flowAndStatsMap;
119     }
120
121     public Map<Short, GenericTableStatistics> getFlowTableAndStatisticsMap() {
122         return flowTableAndStatisticsMap;
123     }
124
125     public Map<Short, AggregateFlowStatistics> getTableAndAggregateFlowStatsMap() {
126         return tableAndAggregateFlowStatsMap;
127     }
128     public Map<NodeConnectorId, NodeConnectorStatistics> getNodeConnectorStats() {
129         return nodeConnectorStats;
130     }
131 }