Implement toString()
- add more debug logs
Change-Id: I1541d66f24d2dde0712a4daef081ca1f49951ef8
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultConsistentMap.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultConsistentMap.java
index 569fc90..e09b624 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultConsistentMap.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultConsistentMap.java
@@ -189,6 +189,11 @@
return javaMap;
}
+ @Override
+ public String toString() {
+ return asJavaMap().toString();
+ }
+
private static <T> T complete(CompletableFuture<T> future) {
try {
return future.get(OPERATION_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionContext.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionContext.java
index c8abc04..8cbe99f 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionContext.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionContext.java
@@ -29,6 +29,8 @@
import org.onosproject.store.service.TransactionContext;
import org.onosproject.store.service.TransactionalMap;
+import com.google.common.base.MoreObjects;
+import com.google.common.base.MoreObjects.ToStringHelper;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.util.concurrent.Futures;
@@ -114,4 +116,16 @@
}
}
}
+
+ @Override
+ public String toString() {
+ ToStringHelper s = MoreObjects.toStringHelper(this)
+ .add("transactionId", transactionId)
+ .add("isOpen", isOpen);
+
+ txMaps.entrySet().forEach(e -> {
+ s.add(e.getKey(), e.getValue());
+ });
+ return s.toString();
+ }
}
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionalMap.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionalMap.java
index 3594adb..dfeb4c1 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionalMap.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/DefaultTransactionalMap.java
@@ -30,6 +30,7 @@
import static com.google.common.base.Preconditions.*;
+import com.google.common.base.MoreObjects;
import com.google.common.base.Objects;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
@@ -193,6 +194,15 @@
return updates;
}
+ // TODO: build expected result Map processing DB updates?
+ @Override
+ public String toString() {
+ return MoreObjects.toStringHelper(this)
+ .add("backingMap", backingMap)
+ .add("updates", prepareDatabaseUpdates())
+ .toString();
+ }
+
/**
* Discards all changes made to this transactional map.
*/