Updated mfwd delete behavior and fixed some small bugs

Change-Id: Id354a88507e94b83fd0007c084cdbf35093bbd1a
diff --git a/apps/mfwd/src/main/java/org/onosproject/mfwd/impl/McastRouteBase.java b/apps/mfwd/src/main/java/org/onosproject/mfwd/impl/McastRouteBase.java
index 730acfa..4da1f33 100644
--- a/apps/mfwd/src/main/java/org/onosproject/mfwd/impl/McastRouteBase.java
+++ b/apps/mfwd/src/main/java/org/onosproject/mfwd/impl/McastRouteBase.java
@@ -17,7 +17,6 @@
 
 import static com.google.common.base.Preconditions.checkNotNull;
 
-import org.apache.commons.collections.set.ListOrderedSet;
 import org.onlab.packet.IpPrefix;
 import org.onosproject.net.ConnectPoint;
 import org.onosproject.net.intent.SinglePointToMultiPointIntent;
@@ -267,6 +266,33 @@
     }
 
     /**
+     * Remove an egress from McastConnectPoint.
+     *
+     * @param connectPoint the egress connect point
+     * @return boolean result of removal
+     */
+    public boolean removeEgressPoint(String connectPoint) {
+        checkNotNull(connectPoint);
+        return this.removeEgressPoint(ConnectPoint.deviceConnectPoint(connectPoint));
+    }
+
+    /**
+     * Remove an egress from McastConnectPoint.
+     *
+     * @param cp the egress connect point
+     * @return boolean result of removal
+     */
+    public boolean removeEgressPoint(ConnectPoint cp) {
+        boolean removed = false;
+        McastConnectPoint mcp = this.findEgressConnectPoint(checkNotNull(cp));
+        if (mcp != null) {
+            removed = egressPoints.remove(mcp);
+            setDirty(true);
+        }
+        return removed;
+    }
+
+    /**
      * Add an egress McastConnectPoint.
      *
      * @param cpstr deviceId/port of the connect point
@@ -292,7 +318,7 @@
      * @return Set of egress ConnectPoints
      */
     public Set<ConnectPoint> getEgressConnectPoints() {
-        Set<ConnectPoint> cps = new ListOrderedSet();
+        Set<ConnectPoint> cps = new HashSet<ConnectPoint>();
 
         for (McastConnectPoint mcp : egressPoints) {
             cps.add(mcp.getConnectPoint());
@@ -417,7 +443,7 @@
         out += "intent: ";
         out += (intentKey == null) ? "not installed" : this.intentKey.toString();
         out += "\n\tingress: ";
-        out += (ingressPoint == null) ? "NULL" : ingressPoint.toString();
+        out += (ingressPoint == null) ? "NULL" : ingressPoint.getConnectPoint().toString();
         out += "\n\tegress: {\n";
         if (egressPoints != null && !egressPoints.isEmpty()) {
             for (McastConnectPoint eg : egressPoints) {