-Refactored REST API to support multipart messages
diff --git a/src/main/java/net/floodlightcontroller/core/web/SwitchResourceBase.java b/src/main/java/net/floodlightcontroller/core/web/SwitchResourceBase.java
index 2334edf..094d305 100644
--- a/src/main/java/net/floodlightcontroller/core/web/SwitchResourceBase.java
+++ b/src/main/java/net/floodlightcontroller/core/web/SwitchResourceBase.java
@@ -103,9 +103,11 @@
try {
future = sw.getStatistics(req);
values = future.get(10, TimeUnit.SECONDS);
- for (OFFlowStatsEntry entry : ((OFFlowStatsReply)values.get(0)).getEntries()) {
- OFFlowStatsEntryMod entryMod = new OFFlowStatsEntryMod(entry, sw);
- flowStats.add(entryMod);
+ for(OFStatsReply value : values){
+ for (OFFlowStatsEntry entry : ((OFFlowStatsReply)value).getEntries()) {
+ OFFlowStatsEntryMod entryMod = new OFFlowStatsEntryMod(entry, sw);
+ flowStats.add(entryMod);
+ }
}
log.debug("Switch flow Stats Entries from switch {} are {}",
sw.getStringId(), flowStats);
@@ -126,9 +128,11 @@
future = sw.getStatistics(req);
values = future.get(10, TimeUnit.SECONDS);
portStats = new ArrayList<OFPortStatsEntryMod>();
- for (OFPortStatsEntry entry : ((OFPortStatsReply)values.get(0)).getEntries()) {
- OFPortStatsEntryMod entryMod = new OFPortStatsEntryMod(entry);
- portStats.add(entryMod);
+ for(OFStatsReply value : values){
+ for (OFPortStatsEntry entry : ((OFPortStatsReply)value).getEntries()) {
+ OFPortStatsEntryMod entryMod = new OFPortStatsEntryMod(entry);
+ portStats.add(entryMod);
+ }
}
log.debug("Switch Port Stats Entries from switch {} are {}",
sw.getStringId(), portStats);
@@ -146,9 +150,11 @@
try {
future = sw.getStatistics(req);
values = future.get(10, TimeUnit.SECONDS);
- for (OFGroupStatsEntry entry : ((OFGroupStatsReply)values.get(0)).getEntries()) {
- OFGroupStatsEntryMod entryMod = new OFGroupStatsEntryMod(entry);
- groupStats.add(entryMod);
+ for(OFStatsReply value : values){
+ for (OFGroupStatsEntry entry : ((OFGroupStatsReply)value).getEntries()) {
+ OFGroupStatsEntryMod entryMod = new OFGroupStatsEntryMod(entry);
+ groupStats.add(entryMod);
+ }
}
log.debug("Switch Group Stats Entries from switch {} are {}",
sw.getStringId(), groupStats);
@@ -166,9 +172,11 @@
try {
future = sw.getStatistics(req);
values = future.get(10, TimeUnit.SECONDS);
- for (OFGroupDescStatsEntry entry : ((OFGroupDescStatsReply)values.get(0)).getEntries()) {
- OFGroupDescStatsEntryMod entryMod = new OFGroupDescStatsEntryMod(entry);
- GroupDescStats.add(entryMod);
+ for(OFStatsReply value : values){
+ for (OFGroupDescStatsEntry entry : ((OFGroupDescStatsReply)value).getEntries()) {
+ OFGroupDescStatsEntryMod entryMod = new OFGroupDescStatsEntryMod(entry);
+ GroupDescStats.add(entryMod);
+ }
}
log.debug("Switch Group_Desc Stats Entries from switch {} are {}",
sw.getStringId(), GroupDescStats);
@@ -235,9 +243,11 @@
log.warn("group with groupId {} not found", groupId);
return null;
}
- for (OFGroupStatsEntry entry : ((OFGroupStatsReply)values.get(0)).getEntries()) {
- OFGroupStatsEntryMod entryMod = new OFGroupStatsEntryMod(entry);
- groupStats.add(entryMod);
+ for(OFStatsReply value : values){
+ for (OFGroupStatsEntry entry : ((OFGroupStatsReply)value).getEntries()) {
+ OFGroupStatsEntryMod entryMod = new OFGroupStatsEntryMod(entry);
+ groupStats.add(entryMod);
+ }
}
log.debug("Switch Group Stats Entries from switch {} are {}",
sw.getStringId(), groupStats);
@@ -281,9 +291,11 @@
try {
future = sw.getStatistics(req);
values = future.get(10, TimeUnit.SECONDS);
- for (OFFlowStatsEntry entry : ((OFFlowStatsReply)values.get(0)).getEntries()) {
- OFFlowStatsEntryMod entryMod = new OFFlowStatsEntryMod(entry, sw);
- flowStats.add(entryMod);
+ for(OFStatsReply value : values){
+ for (OFFlowStatsEntry entry : ((OFFlowStatsReply)value).getEntries()) {
+ OFFlowStatsEntryMod entryMod = new OFFlowStatsEntryMod(entry, sw);
+ flowStats.add(entryMod);
+ }
}
log.debug("Switch flow Stats Entries for table {} from switch {} are {}",
tableType, sw.getStringId(), flowStats);