From b731e2f1dd0972409b136aebc7b463dd72c9cfad Mon Sep 17 00:00:00 2001 From: CNlucius Date: Tue, 13 Sep 2016 11:40:12 +0800 Subject: ONOSFW-171 O/S-SFC-ONOS scenario documentation Change-Id: I51ae1cf736ea24ab6680f8edca1b2bf5dd598365 Signed-off-by: CNlucius --- .../java/org/onosproject/ui/topo/TopoUtils.java | 158 --------------------- 1 file changed, 158 deletions(-) delete mode 100644 framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/TopoUtils.java (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/TopoUtils.java') diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/TopoUtils.java b/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/TopoUtils.java deleted file mode 100644 index b38a7f7d..00000000 --- a/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/TopoUtils.java +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.onosproject.ui.topo; - -import org.onosproject.net.Link; -import org.onosproject.net.LinkKey; - -import java.text.DecimalFormat; - -import static org.onosproject.net.LinkKey.linkKey; - -/** - * Utility methods for helping out with formatting data for the Topology View - * in the web client. - */ -public final class TopoUtils { - - // explicit decision made to not 'javadoc' these self explanatory constants - public static final double KILO = 1024; - public static final double MEGA = 1024 * KILO; - public static final double GIGA = 1024 * MEGA; - - public static final String GBITS_UNIT = "Gb"; - public static final String MBITS_UNIT = "Mb"; - public static final String KBITS_UNIT = "Kb"; - public static final String BITS_UNIT = "b"; - public static final String GBYTES_UNIT = "GB"; - public static final String MBYTES_UNIT = "MB"; - public static final String KBYTES_UNIT = "KB"; - public static final String BYTES_UNIT = "B"; - - - private static final DecimalFormat DF2 = new DecimalFormat("#,###.##"); - - private static final String COMPACT = "%s/%s-%s/%s"; - private static final String EMPTY = ""; - private static final String SPACE = " "; - private static final String PER_SEC = "ps"; - private static final String FLOW = "flow"; - private static final String FLOWS = "flows"; - - // non-instantiable - private TopoUtils() { } - - /** - * Returns a compact identity for the given link, in the form - * used to identify links in the Topology View on the client. - * - * @param link link - * @return compact link identity - */ - public static String compactLinkString(Link link) { - return String.format(COMPACT, link.src().elementId(), link.src().port(), - link.dst().elementId(), link.dst().port()); - } - - /** - * Produces a canonical link key, that is, one that will match both a link - * and its inverse. - * - * @param link the link - * @return canonical key - */ - public static LinkKey canonicalLinkKey(Link link) { - String sn = link.src().elementId().toString(); - String dn = link.dst().elementId().toString(); - return sn.compareTo(dn) < 0 ? - linkKey(link.src(), link.dst()) : linkKey(link.dst(), link.src()); - } - - /** - * Returns human readable count of bytes, to be displayed as a label. - * - * @param bytes number of bytes - * @return formatted byte count - */ - public static String formatBytes(long bytes) { - String unit; - double value; - if (bytes > GIGA) { - value = bytes / GIGA; - unit = GBYTES_UNIT; - } else if (bytes > MEGA) { - value = bytes / MEGA; - unit = MBYTES_UNIT; - } else if (bytes > KILO) { - value = bytes / KILO; - unit = KBYTES_UNIT; - } else { - value = bytes; - unit = BYTES_UNIT; - } - return DF2.format(value) + SPACE + unit; - } - - /** - * Returns human readable bit rate, to be displayed as a label. - * - * @param bytes bytes per second - * @return formatted bits per second - */ - public static String formatBitRate(long bytes) { - String unit; - double value; - - //Convert to bits - long bits = bytes * 8; - if (bits > GIGA) { - value = bits / GIGA; - unit = GBITS_UNIT; - - // NOTE: temporary hack to clip rate at 10.0 Gbps - // Added for the CORD Fabric demo at ONS 2015 - // TODO: provide a more elegant solution to this issue - if (value > 10.0) { - value = 10.0; - } - - } else if (bits > MEGA) { - value = bits / MEGA; - unit = MBITS_UNIT; - } else if (bits > KILO) { - value = bits / KILO; - unit = KBITS_UNIT; - } else { - value = bits; - unit = BITS_UNIT; - } - return DF2.format(value) + SPACE + unit + PER_SEC; - } - - /** - * Returns human readable flow count, to be displayed as a label. - * - * @param flows number of flows - * @return formatted flow count - */ - public static String formatFlows(long flows) { - if (flows < 1) { - return EMPTY; - } - return String.valueOf(flows) + SPACE + (flows > 1 ? FLOWS : FLOW); - } -} -- cgit 1.2.3-korg