diff --git a/src/main/java/net/onrc/onos/apps/bgproute/PtreeNode.java b/src/main/java/net/onrc/onos/apps/bgproute/PtreeNode.java
index b5e4716..9189e3b 100644
--- a/src/main/java/net/onrc/onos/apps/bgproute/PtreeNode.java
+++ b/src/main/java/net/onrc/onos/apps/bgproute/PtreeNode.java
@@ -13,7 +13,7 @@
 
     public int refCount;
 
-    public RibEntry rib;
+    // public RibEntry rib;
     private static final Logger log = LoggerFactory.getLogger(BgpRoute.class);
 
     PtreeNode(byte[] key, int keyBits, int maxKeyOctet) {
@@ -21,7 +21,7 @@
         left = null;
         right = null;
         refCount = 0;
-        rib = null;
+        // rib = null;
         this.key = new byte[maxKeyOctet];
         this.keyBits = keyBits;
         log.debug("inside Ptreenode constructor key {} bits {}", key, keyBits);
diff --git a/src/main/java/net/onrc/onos/core/intent/IntentMap.java b/src/main/java/net/onrc/onos/core/intent/IntentMap.java
index 9bdb21f..25b98a5 100644
--- a/src/main/java/net/onrc/onos/core/intent/IntentMap.java
+++ b/src/main/java/net/onrc/onos/core/intent/IntentMap.java
@@ -47,6 +47,25 @@
 
         public ChangedEventType eventType;
         public Intent intent;
+
+        /**
+         * Get a string representation of the object.
+         * <p/>
+         * The string has the following form:
+         * [eventType=XXX intent=XXX]
+         *
+         * @return a string representation of the object.
+         */
+        @Override
+        public String toString() {
+            StringBuilder ret = new StringBuilder();
+            ret.append("[eventType=");
+            ret.append(this.eventType.toString());
+            ret.append(" intent=");
+            ret.append(this.intent.toString());
+            ret.append("]");
+            return ret.toString();
+        }
     }
 
     public interface ChangedListener extends EventListener {
