diff --git a/src/main/java/net/onrc/onos/core/flowmanager/SharedFlowMapEventDispatcher.java b/src/main/java/net/onrc/onos/core/flowmanager/SharedFlowMapEventDispatcher.java
index cc41ce0..9368ac2 100644
--- a/src/main/java/net/onrc/onos/core/flowmanager/SharedFlowMapEventDispatcher.java
+++ b/src/main/java/net/onrc/onos/core/flowmanager/SharedFlowMapEventDispatcher.java
@@ -67,7 +67,7 @@
         } else if (value instanceof FlowState) {
             // Handles events from flowStateMap.
             final FlowState state = (FlowState) value;
-            final FlowId id = new FlowId(Long.parseLong(event.getKey()));
+            final FlowId id = FlowId.valueOf(event.getKey());
             log.trace("FlowState of FlowId {} was set to {}", id, state);
             for (FlowMapEventListener e : listeners) {
                 e.flowStateChanged(id, FlowState.SUBMITTED, state);
@@ -106,7 +106,7 @@
             Object oldValue = KryoFactory.deserialize(event.getOldValue());
             final FlowState state = (FlowState) value;
             final FlowState oldState = (FlowState) oldValue;
-            final FlowId id = new FlowId(Long.parseLong(event.getKey()));
+            final FlowId id = FlowId.valueOf(event.getKey());
             log.trace("FlowState of FlowId {} was updated from {} to {}",
                     id, oldState, state);
             for (FlowMapEventListener e : listeners) {
