Add string attribute interfaces.

- Add interface definition to be used for UC1. (ONOS-1428, ONOS-1354, ONOS-1390)
- Added toString which was missing only on SwitchImpl.

Change-Id: I5a97d5132129213d78999e4f24917e5e5dbe4496
diff --git a/src/main/java/net/onrc/onos/core/topology/LinkImpl.java b/src/main/java/net/onrc/onos/core/topology/LinkImpl.java
index 7347172..5542e64 100644
--- a/src/main/java/net/onrc/onos/core/topology/LinkImpl.java
+++ b/src/main/java/net/onrc/onos/core/topology/LinkImpl.java
@@ -1,5 +1,8 @@
 package net.onrc.onos.core.topology;
 
+import java.util.Map;
+
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import net.onrc.onos.core.util.SwitchPort;
 
 /**
@@ -77,6 +80,28 @@
     }
 
     @Override
+    public String getStringAttribute(String attr) {
+        throw new UnsupportedOperationException("Not implemented yet");
+    }
+
+    @Override
+    @SuppressFBWarnings(value = "RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE",
+       justification = "getStringAttribute might return null once implemented")
+    public String getStringAttribute(String attr, String def) {
+        final String v = getStringAttribute(attr);
+        if (v == null) {
+            return def;
+        } else {
+            return v;
+        }
+    }
+
+    @Override
+    public Map<String, String> getAllStringAttributes() {
+        throw new UnsupportedOperationException("Not implemented yet");
+    }
+
+    @Override
     public String toString() {
         return String.format("%s --(cap:%f Mbps)--> %s",
                 getSrcPort().toString(),