aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/LinkHighlight.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/LinkHighlight.java')
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/LinkHighlight.java146
1 files changed, 0 insertions, 146 deletions
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/LinkHighlight.java b/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/LinkHighlight.java
deleted file mode 100644
index a734c6b7..00000000
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/ui/topo/LinkHighlight.java
+++ /dev/null
@@ -1,146 +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 java.util.Collections;
-import java.util.Set;
-import java.util.TreeSet;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-/**
- * Denotes the highlighting to be applied to a link.
- * {@link Flavor} is a closed set of NO-, PRIMARY-, or SECONDARY- highlighting.
- * {@link Mod} is an open ended set of additional modifications (CSS classes)
- * that may also be applied.
- * Note that {@link #MOD_OPTICAL} and {@link #MOD_ANIMATED} are pre-defined mods.
- * Label text may be set, which will also be displayed on the link.
- */
-public class LinkHighlight extends AbstractHighlight {
-
- private static final String PLAIN = "plain";
- private static final String PRIMARY = "primary";
- private static final String SECONDARY = "secondary";
- private static final String EMPTY = "";
- private static final String SPACE = " ";
-
- private final Flavor flavor;
- private final Set<Mod> mods = new TreeSet<>();
- private String label = EMPTY;
-
- /**
- * Constructs a link highlight entity.
- *
- * @param linkId the link identifier
- * @param flavor the highlight flavor
- */
- public LinkHighlight(String linkId, Flavor flavor) {
- super(TopoElementType.LINK, linkId);
- this.flavor = checkNotNull(flavor);
- }
-
- /**
- * Adds a highlighting modification to this link highlight.
- *
- * @param mod mod to be added
- * @return self, for chaining
- */
- public LinkHighlight addMod(Mod mod) {
- mods.add(checkNotNull(mod));
- return this;
- }
-
- /**
- * Adds a label to be displayed on the link.
- *
- * @param label the label text
- * @return self, for chaining
- */
- public LinkHighlight setLabel(String label) {
- this.label = label == null ? EMPTY : label;
- return this;
- }
-
- /**
- * Returns the highlight flavor.
- *
- * @return highlight flavor
- */
- public Flavor flavor() {
- return flavor;
- }
-
- /**
- * Returns the highlight modifications.
- *
- * @return highlight modifications
- */
- public Set<Mod> mods() {
- return Collections.unmodifiableSet(mods);
- }
-
- /**
- * Generates the CSS classes string from the {@link #flavor} and
- * any optional {@link #mods}.
- *
- * @return CSS classes string
- */
- public String cssClasses() {
- StringBuilder sb = new StringBuilder(flavor.toString());
- mods.forEach(m -> sb.append(SPACE).append(m));
- return sb.toString();
- }
-
- /**
- * Returns the label text.
- *
- * @return label text
- */
- public String label() {
- return label;
- }
-
- /**
- * Link highlighting flavor.
- */
- public enum Flavor {
- NO_HIGHLIGHT(PLAIN),
- PRIMARY_HIGHLIGHT(PRIMARY),
- SECONDARY_HIGHLIGHT(SECONDARY);
-
- private String cssName;
-
- Flavor(String s) {
- cssName = s;
- }
-
- @Override
- public String toString() {
- return cssName;
- }
- }
-
- /**
- * Denotes a link to be tagged as an optical link.
- */
- public static final Mod MOD_OPTICAL = new Mod("optical");
-
- /**
- * Denotes a link to be tagged with animated traffic ("marching ants").
- */
- public static final Mod MOD_ANIMATED = new Mod("animated");
-}