diff --git a/protocols/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/message/OperationResult.java b/protocols/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/message/OperationResult.java
index 9980735..acc44cc 100644
--- a/protocols/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/message/OperationResult.java
+++ b/protocols/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/message/OperationResult.java
@@ -20,7 +20,7 @@
 import java.util.List;
 
 import org.onosproject.ovsdb.rfc.notation.Row;
-import org.onosproject.ovsdb.rfc.notation.UUID;
+import org.onosproject.ovsdb.rfc.notation.Uuid;
 
 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 
@@ -30,7 +30,7 @@
 @JsonIgnoreProperties(ignoreUnknown = true)
 public final class OperationResult {
     private int count;
-    private UUID uuid;
+    private Uuid uuid;
     private List<Row> rows;
     private String error;
     private String details;
@@ -59,7 +59,7 @@
      * @param error error message
      * @param details details of error message
      */
-    public OperationResult(int count, UUID uuid, List<Row> rows, String error,
+    public OperationResult(int count, Uuid uuid, List<Row> rows, String error,
                            String details) {
         checkNotNull(uuid, "uuid cannot be null");
         checkNotNull(rows, "rows cannot be null");
@@ -92,7 +92,7 @@
      * Return uuid.
      * @return uuid
      */
-    public UUID getUuid() {
+    public Uuid getUuid() {
         return uuid;
     }
 
@@ -100,7 +100,7 @@
      * Set uuid value.
      * @param uuid the Operation message of uuid
      */
-    public void setUuid(UUID uuid) {
+    public void setUuid(Uuid uuid) {
         checkNotNull(uuid, "uuid cannot be null");
         this.uuid = uuid;
     }
