diff --git a/src/main/java/net/floodlightcontroller/core/web/AllSwitchStatisticsResource.java b/src/main/java/net/floodlightcontroller/core/web/AllSwitchStatisticsResource.java index f7af3a1220463b84b5f0022d9d7fc63d0330cf6b..b4aa8d9115a59c6f6cad7427a41ba5c1d37f8344 100644 --- a/src/main/java/net/floodlightcontroller/core/web/AllSwitchStatisticsResource.java +++ b/src/main/java/net/floodlightcontroller/core/web/AllSwitchStatisticsResource.java @@ -24,9 +24,11 @@ import java.util.List; import java.util.Map; import net.floodlightcontroller.core.IFloodlightProviderService; +import net.floodlightcontroller.core.IOFSwitch; import net.floodlightcontroller.core.types.MacVlanPair; import org.openflow.protocol.OFFeaturesReply; +import org.openflow.protocol.OFPhysicalPort; import org.openflow.protocol.statistics.OFStatistics; import org.openflow.protocol.statistics.OFStatisticsType; import org.openflow.util.HexString; @@ -171,7 +173,9 @@ public class AllSwitchStatisticsResource extends SwitchResourceBase { if ((requestType == REQUESTTYPE.OFSTATS) && (statType != null)) { switchReply = getSwitchStatistics(switchId, statType); } else if (requestType == REQUESTTYPE.OFFEATURES) { - featuresReply = floodlightProvider.getSwitches().get(switchId).getFeaturesReply(); + IOFSwitch sw = floodlightProvider.getSwitches().get(switchId); + featuresReply = sw.getFeaturesReply(); + featuresReply.setPorts(new ArrayList<OFPhysicalPort>(sw.getPorts().values())); } } } diff --git a/src/main/java/net/floodlightcontroller/core/web/SwitchStatisticsResource.java b/src/main/java/net/floodlightcontroller/core/web/SwitchStatisticsResource.java index eaa9621d2f2e20979c2554cd3a95c60878069c1d..3a923d65b8c4422a4382333cbcef9c30016444da 100644 --- a/src/main/java/net/floodlightcontroller/core/web/SwitchStatisticsResource.java +++ b/src/main/java/net/floodlightcontroller/core/web/SwitchStatisticsResource.java @@ -17,6 +17,7 @@ package net.floodlightcontroller.core.web; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -25,6 +26,7 @@ import net.floodlightcontroller.core.IFloodlightProviderService; import net.floodlightcontroller.core.IOFSwitch; import org.openflow.protocol.OFFeaturesReply; +import org.openflow.protocol.OFPhysicalPort; import org.openflow.protocol.statistics.OFStatistics; import org.openflow.protocol.statistics.OFStatisticsType; import org.openflow.util.HexString; @@ -68,6 +70,7 @@ public class SwitchStatisticsResource extends SwitchResourceBase { IOFSwitch sw = floodlightProvider.getSwitches().get(HexString.toLong(switchId)); if (sw != null) { OFFeaturesReply fr = sw.getFeaturesReply(); + fr.setPorts(new ArrayList<OFPhysicalPort>(sw.getPorts().values())); result.put(sw.getStringId(), fr); } return result;