diff --git a/xos/synchronizer/pseudowireproviders/metronetworkpseudowireprovider.py b/xos/synchronizer/pseudowireproviders/metronetworkpseudowireprovider.py
index f2762e2..8d4fffd 100644
--- a/xos/synchronizer/pseudowireproviders/metronetworkpseudowireprovider.py
+++ b/xos/synchronizer/pseudowireproviders/metronetworkpseudowireprovider.py
@@ -16,7 +16,7 @@
     def create(self, port1, port2, vlanid, psuedowireservice):
         # Create method - create eline with the ports
         # Vlan is TBD
-        pseudowirename = ("port1: %s, port2: %s, vlan: %s" % (port1, port2, vlanid))
+        pseudowirename = ("Vlan: %s" % vlanid)
         logger.info("Metronetwork create called, name: %s" % pseudowirename )
         # Edge to Edge Point Connectivity creation
         edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection()
@@ -32,8 +32,7 @@
         edgetoedgeconnectivity.type = 'Point_To_Point'
         edgetoedgeconnectivity.operstate = 'inactive'
         edgetoedgeconnectivity.adminstate = 'disabled'
-        edgetoedgeconnectivity.sid = pseudowirename
-        edgetoedgeconnectivity.name = 'Metronetwork'
+        edgetoedgeconnectivity.name = pseudowirename
         edgetoedgeconnectivity.save()
         return pseudowirename
 
@@ -42,7 +41,7 @@
     def connect(self, handle):
         # Connect method - simply transition the state of the underlying object - the Metronet sync will do the rest
         logger.info("Metronetwork Pseudowire connect called, handle = %s" % handle)
-        edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection.objects.get(sid=handle)
+        edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection.objects.get(name=handle)
         edgetoedgeconnectivity.adminstate = 'activationrequested'
         edgetoedgeconnectivity.save()
 
@@ -51,7 +50,7 @@
     def disconnect(self, handle):
         # Connect method - simply transition the state of the underlying object - the Metronet sync will do the rest
         logger.info("Metronetwork Pseudowire disconnect called, handle = %s" % handle)
-        edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection.objects.get(sid=handle)
+        edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection.objects.get(name=handle)
         edgetoedgeconnectivity.adminstate = 'deactivationrequested'
         edgetoedgeconnectivity.save()
 
@@ -60,7 +59,7 @@
     def delete(self, handle):
         # Delete method - simply set the state to deleted and the Metronet sync will do the rest
         logger.info("Metronetwork Pseudowire delete called, handle = %s" % handle)
-        edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection.objects.get(sid=handle)
+        edgetoedgeconnectivity = NetworkEdgeToEdgePointConnection.objects.get(name=handle)
         edgetoedgeconnectivity.deleted = True
         edgetoedgeconnectivity.save()
 
