diff --git a/src/main/java/net/onrc/onos/core/topology/TopologyElement.java b/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
index bb32958..f169456 100644
--- a/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
+++ b/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
@@ -6,7 +6,7 @@
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
 
-import org.apache.commons.lang.Validate;
+import static com.google.common.base.Preconditions.checkNotNull;
 
 /**
  * Base class for Topology Elements.
@@ -150,7 +150,7 @@
         if (isFrozen) {
             throw new IllegalStateException("Tried to modify frozen object: " + this);
         }
-        Validate.notNull(value, "attribute value cannot be null");
+        checkNotNull(value, "attribute value cannot be null");
 
         return this.stringAttributes.putIfAbsent(attr, value) == null;
     }
@@ -160,7 +160,7 @@
         if (isFrozen) {
             throw new IllegalStateException("Tried to modify frozen object: " + this);
         }
-        Validate.notNull(value, "attribute value cannot be null");
+        checkNotNull(value, "attribute value cannot be null");
 
         return this.stringAttributes.replace(attr, oldValue, value);
     }
