aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/tunnel/TunnelEndPointFormatter.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/tunnel/TunnelEndPointFormatter.java')
-rw-r--r--framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/tunnel/TunnelEndPointFormatter.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/tunnel/TunnelEndPointFormatter.java b/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/tunnel/TunnelEndPointFormatter.java
new file mode 100644
index 00000000..964d451a
--- /dev/null
+++ b/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/tunnel/TunnelEndPointFormatter.java
@@ -0,0 +1,33 @@
+package org.onosproject.incubator.net.tunnel;
+
+
+import org.onosproject.ui.table.CellFormatter;
+import org.onosproject.ui.table.cell.AbstractCellFormatter;
+
+/**
+ * Formats a optical tunnel endpoint as "(type)/(element-id)/(port)".
+ * Formats a ip tunnel endpoint as "ip".
+ */
+public final class TunnelEndPointFormatter extends AbstractCellFormatter {
+ //non-instantiable
+ private TunnelEndPointFormatter() {
+ }
+
+ @Override
+ protected String nonNullFormat(Object value) {
+
+ if (value instanceof DefaultOpticalTunnelEndPoint) {
+ DefaultOpticalTunnelEndPoint cp = (DefaultOpticalTunnelEndPoint) value;
+ return cp.type() + "/" + cp.elementId().get() + "/" + cp.portNumber().get();
+ } else if (value instanceof IpTunnelEndPoint) {
+ IpTunnelEndPoint cp = (IpTunnelEndPoint) value;
+ return cp.ip().toString();
+ }
+ return "";
+ }
+
+ /**
+ * An instance of this class.
+ */
+ public static final CellFormatter INSTANCE = new TunnelEndPointFormatter();
+}