diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/CopycatTransport.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/CopycatTransport.java
index 2634288..ddec252 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/CopycatTransport.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/CopycatTransport.java
@@ -17,6 +17,7 @@
 
 import static com.google.common.base.Preconditions.checkNotNull;
 
+import org.onosproject.cluster.PartitionId;
 import org.onosproject.store.cluster.messaging.MessagingService;
 
 import io.atomix.catalyst.transport.Client;
@@ -48,25 +49,25 @@
     }
 
     private final Mode mode;
-    private final String clusterName;
+    private final PartitionId partitionId;
     private final MessagingService messagingService;
 
-    public CopycatTransport(Mode mode, String clusterName, MessagingService messagingService) {
+    public CopycatTransport(Mode mode, PartitionId partitionId, MessagingService messagingService) {
         this.mode = checkNotNull(mode);
-        this.clusterName = checkNotNull(clusterName);
+        this.partitionId = checkNotNull(partitionId);
         this.messagingService = checkNotNull(messagingService);
     }
 
     @Override
     public Client client() {
-        return new CopycatTransportClient(clusterName,
+        return new CopycatTransportClient(partitionId,
                                           messagingService,
                                           mode);
     }
 
     @Override
     public Server server() {
-        return new CopycatTransportServer(clusterName,
+        return new CopycatTransportServer(partitionId,
                                           messagingService);
     }
 }
