diff --git a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/AbstractNetworkGraph.java b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/NetworkGraphImpl.java
similarity index 93%
rename from src/main/java/net/onrc/onos/ofcontroller/networkgraph/AbstractNetworkGraph.java
rename to src/main/java/net/onrc/onos/ofcontroller/networkgraph/NetworkGraphImpl.java
index b2f9247..88cedac 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/AbstractNetworkGraph.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/NetworkGraphImpl.java
@@ -14,9 +14,9 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class AbstractNetworkGraph implements NetworkGraph {
+public class NetworkGraphImpl implements NetworkGraph {
 	@SuppressWarnings("unused")
-	private static final Logger log = LoggerFactory.getLogger(AbstractNetworkGraph.class);
+	private static final Logger log = LoggerFactory.getLogger(NetworkGraphImpl.class);
 
 	// DPID -> Switch
 	protected ConcurrentMap<Long, Switch> switches;
@@ -24,7 +24,7 @@
 	protected ConcurrentMap<InetAddress, Set<Device>> addr2Device;
 	protected ConcurrentMap<MACAddress, Device> mac2Device;
 
-	public AbstractNetworkGraph() {
+	public NetworkGraphImpl() {
 		// TODO: Does these object need to be stored in Concurrent Collection?
 		switches = new ConcurrentHashMap<>();
 		addr2Device = new ConcurrentHashMap<>();
diff --git a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/TopologyManager.java b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/TopologyManager.java
index 532ad8d..d0e215f 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/TopologyManager.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/TopologyManager.java
@@ -39,7 +39,7 @@
  * re-ordering. e.g.) Link Add came in, but Switch was not there.
  *
  */
-public class TopologyManager extends AbstractNetworkGraph implements
+public class TopologyManager extends NetworkGraphImpl implements
 	NetworkGraphDiscoveryInterface, NetworkGraphReplicationInterface {
 
     private static final Logger log = LoggerFactory
diff --git a/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java b/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java
index ec0d54f..cde98f0 100644
--- a/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java
+++ b/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java
@@ -1,12 +1,12 @@
 package net.onrc.onos.intent;
 
-import net.onrc.onos.ofcontroller.networkgraph.AbstractNetworkGraph;
+import net.onrc.onos.ofcontroller.networkgraph.NetworkGraphImpl;
 import net.onrc.onos.ofcontroller.networkgraph.Link;
 import net.onrc.onos.ofcontroller.networkgraph.LinkImpl;
 import net.onrc.onos.ofcontroller.networkgraph.Switch;
 import net.onrc.onos.ofcontroller.networkgraph.SwitchImpl;
 
-public class MockNetworkGraph extends AbstractNetworkGraph {
+public class MockNetworkGraph extends NetworkGraphImpl {
 	public Switch addSwitch(Long switchId) {
 		SwitchImpl sw = new SwitchImpl(this, switchId);
 		switches.put(sw.getDpid(), sw);
