diff --git a/src/main/java/net/onrc/onos/core/topology/DeviceEvent.java b/src/main/java/net/onrc/onos/core/topology/DeviceEvent.java
index 110aef5..317eb4e 100644
--- a/src/main/java/net/onrc/onos/core/topology/DeviceEvent.java
+++ b/src/main/java/net/onrc/onos/core/topology/DeviceEvent.java
@@ -51,7 +51,7 @@
     }
 
     /**
-     * Create an unfrozen copy of given Object.
+     * Creates an unfrozen copy of given Object.
      *
      * @param original to make copy of.
      */
@@ -125,7 +125,7 @@
             return true;
         }
 
-        if (!super.equals(obj)) {
+        if (obj == null) {
             return false;
         }
 
diff --git a/src/main/java/net/onrc/onos/core/topology/LinkEvent.java b/src/main/java/net/onrc/onos/core/topology/LinkEvent.java
index a975e60..01b4efe 100644
--- a/src/main/java/net/onrc/onos/core/topology/LinkEvent.java
+++ b/src/main/java/net/onrc/onos/core/topology/LinkEvent.java
@@ -50,7 +50,7 @@
     }
 
     /**
-     * Create an unfrozen copy of given Object.
+     * Creates an unfrozen copy of given Object.
      *
      * @param original to make copy of.
      */
diff --git a/src/main/java/net/onrc/onos/core/topology/PortEvent.java b/src/main/java/net/onrc/onos/core/topology/PortEvent.java
index e9256af..d3a71a5 100644
--- a/src/main/java/net/onrc/onos/core/topology/PortEvent.java
+++ b/src/main/java/net/onrc/onos/core/topology/PortEvent.java
@@ -60,7 +60,7 @@
     }
 
     /**
-     * Create an unfrozen copy of given Object.
+     * Creates an unfrozen copy of given Object.
      *
      * @param original to make copy of.
      */
diff --git a/src/main/java/net/onrc/onos/core/topology/SwitchEvent.java b/src/main/java/net/onrc/onos/core/topology/SwitchEvent.java
index b61f7a5..0464ffc 100644
--- a/src/main/java/net/onrc/onos/core/topology/SwitchEvent.java
+++ b/src/main/java/net/onrc/onos/core/topology/SwitchEvent.java
@@ -39,7 +39,7 @@
     }
 
     /**
-     * Create an unfrozen copy of given Object.
+     * Creates an unfrozen copy of given Object.
      *
      * @param original to make copy of.
      */
diff --git a/src/main/java/net/onrc/onos/core/topology/TopologyElement.java b/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
index 3a6dad8..ceaf0fc 100644
--- a/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
+++ b/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
@@ -35,7 +35,7 @@
     }
 
     /**
-     * Create an unfrozen copy of given Object.
+     * Creates an unfrozen copy of given Object.
      * <p/>
      * Sub-classes should do a deep-copies if necessary.
      *
diff --git a/src/main/java/net/onrc/onos/core/topology/TopologyManager.java b/src/main/java/net/onrc/onos/core/topology/TopologyManager.java
index eb2a799..2e95c6c 100644
--- a/src/main/java/net/onrc/onos/core/topology/TopologyManager.java
+++ b/src/main/java/net/onrc/onos/core/topology/TopologyManager.java
@@ -837,7 +837,7 @@
     }
 
     /**
-     * Add a switch to the topology replica.
+     * Adds a switch to the topology replica.
      *
      * @param switchEvent the SwitchEvent with the switch to add.
      */
@@ -857,7 +857,7 @@
     }
 
     /**
-     * Remove a switch from the topology replica.
+     * Removes a switch from the topology replica.
      * <p/>
      * It will call {@link #removePort(PortEvent)} for each ports on this switch.
      *
@@ -891,7 +891,7 @@
     }
 
     /**
-     * Add a port to the topology replica.
+     * Adds a port to the topology replica.
      *
      * @param portEvent the PortEvent with the port to add.
      */
@@ -921,7 +921,7 @@
     }
 
     /**
-     * Remove a port from the topology replica.
+     * Removes a port from the topology replica.
      * <p/>
      * It will call {@link #removeDevice(DeviceEvent)} for each hosts on this port
      * and call {@link #removeLink(LinkEvent)} for each links on this port.
@@ -988,7 +988,7 @@
     }
 
     /**
-     * Add a link to the topology replica.
+     * Adds a link to the topology replica.
      * <p/>
      * It will call {@link #removeDevice(DeviceEvent)} for each hosts on both ports.
      *
@@ -1056,7 +1056,7 @@
     }
 
     /**
-     * Remove a link from the topology replica.
+     * Removes a link from the topology replica.
      *
      * @param linkEvent the LinkEvent with the link to remove.
      */
@@ -1100,7 +1100,7 @@
     }
 
     /**
-     * Add a device to the topology replica.
+     * Adds a device to the topology replica.
      * <p/>
      * TODO: Device-related work is incomplete.
      * TODO: Eventually, we might need to consider reordering
@@ -1157,7 +1157,7 @@
     }
 
     /**
-     * Remove a device from the topology replica.
+     * Removes a device from the topology replica.
      * <p/>
      * TODO: Device-related work is incomplete.
      *
