Add a fix when printing a Flow Entry in case there are no matching
conditions or actions.
diff --git a/web/get_flow.py b/web/get_flow.py
index dd6a8b6..99e4f3a 100755
--- a/web/get_flow.py
+++ b/web/get_flow.py
@@ -53,95 +53,107 @@
     actions = f['flowEntryActions']
     print "  FlowEntry: (%s, %s, %s, %s, %s)" % (inPort, dpid, outPort, userState, switchState)
 
-    inPort = match['inPort']
-    matchInPort = match['matchInPort']
-    srcMac = match['srcMac']
-    matchSrcMac = match['matchSrcMac']
-    dstMac = match['dstMac']
-    matchDstMac = match['matchDstMac']
-    vlanId = match['vlanId']
-    matchVlanId = match['matchVlanId']
-    vlanPriority = match['vlanPriority']
-    matchVlanPriority = match['matchVlanPriority']
-    ethernetFrameType = match['ethernetFrameType']
-    matchEthernetFrameType = match['matchEthernetFrameType']
-    ipToS = match['ipToS']
-    matchIpToS = match['matchIpToS']
-    ipProto = match['ipProto']
-    matchIpProto = match['matchIpProto']
-    srcIPv4Net = match['srcIPv4Net']
-    matchSrcIPv4Net = match['matchSrcIPv4Net']
-    dstIPv4Net = match['dstIPv4Net']
-    matchDstIPv4Net = match['matchDstIPv4Net']
-    srcTcpUdpPort = match['srcTcpUdpPort']
-    matchSrcTcpUdpPort = match['matchSrcTcpUdpPort']
-    dstTcpUdpPort = match['dstTcpUdpPort']
-    matchDstTcpUdpPort = match['matchDstTcpUdpPort']
-    if matchInPort == True:
-      print "    inPort: %s" % inPort['value']
-    if matchSrcMac == True:
-      print "    srcMac: %s" % srcMac['value']
-    if matchDstMac == True:
-      print "    dstMac: %s" % dstMac['value']
-    if matchVlanId == True:
-      print "    vlanId: %s" % vlanId
-    if matchVlanPriority == True:
-      print "    vlanPriority: %s" % vlanPriority
-    if matchEthernetFrameType == True:
-      print "    ethernetFrameType: %s" % ethernetFrameType
-    if matchIpToS == True:
-      print "    ipToS: %s" % ipToS
-    if matchIpProto == True:
-      print "    ipProto: %s" % ipProto
-    if matchSrcIPv4Net == True:
-      print "    srcIPv4Net: %s" % srcIPv4Net['value']
-    if matchDstIPv4Net == True:
-      print "    dstIPv4Net: %s" % dstIPv4Net['value']
-    if matchSrcTcpUdpPort == True:
-      print "    srcTcpUdpPort: %s" % srcTcpUdpPort
-    if matchDstTcpUdpPort == True:
-      print "    dstTcpUdpPort: %s" % dstTcpUdpPort
+    #
+    # Print the match conditions
+    #
+    if match == None:
+      print "   Match: %s" % (match)
+    else:
+      inPort = match['inPort']
+      matchInPort = match['matchInPort']
+      srcMac = match['srcMac']
+      matchSrcMac = match['matchSrcMac']
+      dstMac = match['dstMac']
+      matchDstMac = match['matchDstMac']
+      vlanId = match['vlanId']
+      matchVlanId = match['matchVlanId']
+      vlanPriority = match['vlanPriority']
+      matchVlanPriority = match['matchVlanPriority']
+      ethernetFrameType = match['ethernetFrameType']
+      matchEthernetFrameType = match['matchEthernetFrameType']
+      ipToS = match['ipToS']
+      matchIpToS = match['matchIpToS']
+      ipProto = match['ipProto']
+      matchIpProto = match['matchIpProto']
+      srcIPv4Net = match['srcIPv4Net']
+      matchSrcIPv4Net = match['matchSrcIPv4Net']
+      dstIPv4Net = match['dstIPv4Net']
+      matchDstIPv4Net = match['matchDstIPv4Net']
+      srcTcpUdpPort = match['srcTcpUdpPort']
+      matchSrcTcpUdpPort = match['matchSrcTcpUdpPort']
+      dstTcpUdpPort = match['dstTcpUdpPort']
+      matchDstTcpUdpPort = match['matchDstTcpUdpPort']
+      if matchInPort == True:
+	print "    inPort: %s" % inPort['value']
+      if matchSrcMac == True:
+	print "    srcMac: %s" % srcMac['value']
+      if matchDstMac == True:
+	print "    dstMac: %s" % dstMac['value']
+      if matchVlanId == True:
+	print "    vlanId: %s" % vlanId
+      if matchVlanPriority == True:
+	print "    vlanPriority: %s" % vlanPriority
+      if matchEthernetFrameType == True:
+	print "    ethernetFrameType: %s" % ethernetFrameType
+      if matchIpToS == True:
+	print "    ipToS: %s" % ipToS
+      if matchIpProto == True:
+	print "    ipProto: %s" % ipProto
+      if matchSrcIPv4Net == True:
+	print "    srcIPv4Net: %s" % srcIPv4Net['value']
+      if matchDstIPv4Net == True:
+	print "    dstIPv4Net: %s" % dstIPv4Net['value']
+      if matchSrcTcpUdpPort == True:
+	print "    srcTcpUdpPort: %s" % srcTcpUdpPort
+      if matchDstTcpUdpPort == True:
+	print "    dstTcpUdpPort: %s" % dstTcpUdpPort
 
-    for a in actions:
-      actionType = a['actionType']
-      if actionType == "ACTION_OUTPUT":
-	port = a['actionOutput']['port']
-	maxLen = a['actionOutput']['maxLen']
-	print "    actionType: %s port: %s maxLen: %s" % (actionType, port, maxLen)
-      if actionType == "ACTION_SET_VLAN_VID":
-	vlanId = a['actionSetVlanId']['vlanId']
-	print "    actionType: %s vlanId: %s" % (actionType, vlanId)
-      if actionType == "ACTION_SET_VLAN_PCP":
-	vlanPriority = a['actionSetVlanPriority']['vlanPriority']
-	print "    actionType: %s vlanPriority: %s" % (actionType, vlanPriority)
-      if actionType == "ACTION_STRIP_VLAN":
-	stripVlan = a['actionStripVlan']['stripVlan']
-	print "    actionType: %s stripVlan: %s" % (actionType, stripVlan)
-      if actionType == "ACTION_SET_DL_SRC":
-	setEthernetSrcAddr = a['actionSetEthernetSrcAddr']['addr']['value']
-	print "    actionType: %s setEthernetSrcAddr: %s" % (actionType, setEthernetSrcAddr)
-      if actionType == "ACTION_SET_DL_DST":
-	setEthernetDstAddr = a['actionSetEthernetDstAddr']['addr']['value']
-	print "    actionType: %s setEthernetDstAddr: %s" % (actionType, setEthernetDstAddr)
-      if actionType == "ACTION_SET_NW_SRC":
-	setIPv4SrcAddr = a['actionSetIPv4SrcAddr']['addr']['value']
-	print "    actionType: %s setIPv4SrcAddr: %s" % (actionType, setIPv4SrcAddr)
-      if actionType == "ACTION_SET_NW_DST":
-	setIPv4DstAddr = a['actionSetIPv4DstAddr']['addr']['value']
-	print "    actionType: %s setIPv4DstAddr: %s" % (actionType, setIPv4DstAddr)
-      if actionType == "ACTION_SET_NW_TOS":
-	setIpToS = a['actionSetIpToS']['ipToS']
-	print "    actionType: %s setIpToS: %s" % (actionType, setIpToS)
-      if actionType == "ACTION_SET_TP_SRC":
-	setTcpUdpSrcPort = a['actionSetTcpUdpSrcPort']['port']
-	print "    actionType: %s setTcpUdpSrcPort: %s" % (actionType, setTcpUdpSrcPort)
-      if actionType == "ACTION_SET_TP_DST":
-	setTcpUdpDstPort = a['actionSetTcpUdpDstPort']['port']
-	print "    actionType: %s setTcpUdpDstPort: %s" % (actionType, setTcpUdpDstPort)
-      if actionType == "ACTION_ENQUEUE":
-	port = a['actionEnqueue']['port']['value']
-	queueId = a['actionEnqueue']['queueId']
-	print "    actionType: %s port: %s queueId: %s" % (actionType, port, queueId)
+    #
+    # Print the actions
+    #
+    if actions == None:
+      print "   Actions: %s" % (actions)
+    else:
+      for a in actions:
+	actionType = a['actionType']
+	if actionType == "ACTION_OUTPUT":
+	  port = a['actionOutput']['port']
+	  maxLen = a['actionOutput']['maxLen']
+	  print "    actionType: %s port: %s maxLen: %s" % (actionType, port, maxLen)
+	if actionType == "ACTION_SET_VLAN_VID":
+	  vlanId = a['actionSetVlanId']['vlanId']
+	  print "    actionType: %s vlanId: %s" % (actionType, vlanId)
+	if actionType == "ACTION_SET_VLAN_PCP":
+	  vlanPriority = a['actionSetVlanPriority']['vlanPriority']
+	  print "    actionType: %s vlanPriority: %s" % (actionType, vlanPriority)
+	if actionType == "ACTION_STRIP_VLAN":
+	  stripVlan = a['actionStripVlan']['stripVlan']
+	  print "    actionType: %s stripVlan: %s" % (actionType, stripVlan)
+	if actionType == "ACTION_SET_DL_SRC":
+	  setEthernetSrcAddr = a['actionSetEthernetSrcAddr']['addr']['value']
+	  print "    actionType: %s setEthernetSrcAddr: %s" % (actionType, setEthernetSrcAddr)
+	if actionType == "ACTION_SET_DL_DST":
+	  setEthernetDstAddr = a['actionSetEthernetDstAddr']['addr']['value']
+	  print "    actionType: %s setEthernetDstAddr: %s" % (actionType, setEthernetDstAddr)
+	if actionType == "ACTION_SET_NW_SRC":
+	  setIPv4SrcAddr = a['actionSetIPv4SrcAddr']['addr']['value']
+	  print "    actionType: %s setIPv4SrcAddr: %s" % (actionType, setIPv4SrcAddr)
+	if actionType == "ACTION_SET_NW_DST":
+	  setIPv4DstAddr = a['actionSetIPv4DstAddr']['addr']['value']
+	  print "    actionType: %s setIPv4DstAddr: %s" % (actionType, setIPv4DstAddr)
+	if actionType == "ACTION_SET_NW_TOS":
+	  setIpToS = a['actionSetIpToS']['ipToS']
+	  print "    actionType: %s setIpToS: %s" % (actionType, setIpToS)
+	if actionType == "ACTION_SET_TP_SRC":
+	  setTcpUdpSrcPort = a['actionSetTcpUdpSrcPort']['port']
+	  print "    actionType: %s setTcpUdpSrcPort: %s" % (actionType, setTcpUdpSrcPort)
+	if actionType == "ACTION_SET_TP_DST":
+	  setTcpUdpDstPort = a['actionSetTcpUdpDstPort']['port']
+	  print "    actionType: %s setTcpUdpDstPort: %s" % (actionType, setTcpUdpDstPort)
+	if actionType == "ACTION_ENQUEUE":
+	  port = a['actionEnqueue']['port']['value']
+	  queueId = a['actionEnqueue']['queueId']
+	  print "    actionType: %s port: %s queueId: %s" % (actionType, port, queueId)
 
 def get_flow_path(flow_id):
   try: