aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/web/gui/src/main/java/org/onosproject/ui/impl/topo/IntentSelection.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/web/gui/src/main/java/org/onosproject/ui/impl/topo/IntentSelection.java')
-rw-r--r--framework/src/onos/web/gui/src/main/java/org/onosproject/ui/impl/topo/IntentSelection.java175
1 files changed, 0 insertions, 175 deletions
diff --git a/framework/src/onos/web/gui/src/main/java/org/onosproject/ui/impl/topo/IntentSelection.java b/framework/src/onos/web/gui/src/main/java/org/onosproject/ui/impl/topo/IntentSelection.java
deleted file mode 100644
index 151e6131..00000000
--- a/framework/src/onos/web/gui/src/main/java/org/onosproject/ui/impl/topo/IntentSelection.java
+++ /dev/null
@@ -1,175 +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.impl.topo;
-
-import org.onosproject.net.intent.Intent;
-import org.onosproject.ui.topo.NodeSelection;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- * Encapsulates a selection of intents (paths) inferred from a selection
- * of devices and/or hosts from the topology view.
- */
-public class IntentSelection {
-
- private static final int ALL = -1;
-
- protected static final Logger log =
- LoggerFactory.getLogger(IntentSelection.class);
-
- private final NodeSelection nodes;
-
- private final List<Intent> intents;
- private int index = ALL;
-
- /**
- * Creates an intent selection group, based on selected nodes.
- *
- * @param nodes node selection
- * @param filter intent filter
- */
- public IntentSelection(NodeSelection nodes, TopoIntentFilter filter) {
- this.nodes = nodes;
- intents = filter.findPathIntents(nodes.hostsWithHover(), nodes.devicesWithHover());
- if (intents.size() == 1) {
- index = 0; // pre-select a single intent
- }
- }
-
- /**
- * Creates an intent selection group, for a single intent.
- *
- * @param intent the intent
- */
- public IntentSelection(Intent intent) {
- nodes = null;
- intents = new ArrayList<>(1);
- intents.add(intent);
- index = 0;
- }
-
- /**
- * Returns true if no intents are selected.
- *
- * @return true if nothing selected
- */
- public boolean none() {
- return intents.isEmpty();
- }
-
- /**
- * Returns true if all intents in this select group are currently selected.
- * This is the initial state, so that all intents are shown on the
- * topology view with primary highlighting.
- *
- * @return true if all selected
- */
- public boolean all() {
- return index == ALL;
- }
-
- /**
- * Returns true if there is a single intent in this select group, or if
- * a specific intent has been marked (index != ALL).
- *
- * @return true if single intent marked
- */
- public boolean single() {
- return !all();
- }
-
- /**
- * Returns the number of intents in this selection group.
- *
- * @return number of intents
- */
- public int size() {
- return intents.size();
- }
-
- /**
- * Returns the index of the currently selected intent.
- *
- * @return the current index
- */
- public int index() {
- return index;
- }
-
- /**
- * The list of intents in this selection group.
- *
- * @return list of intents
- */
- public List<Intent> intents() {
- return Collections.unmodifiableList(intents);
- }
-
- /**
- * Marks and returns the next intent in this group. Note that the
- * selection wraps around to the beginning again, if necessary.
- *
- * @return the next intent in the group
- */
- public Intent next() {
- index += 1;
- if (index >= intents.size()) {
- index = 0;
- }
- return intents.get(index);
- }
-
- /**
- * Marks and returns the previous intent in this group. Note that the
- * selection wraps around to the end again, if necessary.
- *
- * @return the previous intent in the group
- */
- public Intent prev() {
- index -= 1;
- if (index < 0) {
- index = intents.size() - 1;
- }
- return intents.get(index);
- }
-
- /**
- * Returns the currently marked intent, or null if "all" intents
- * are marked.
- *
- * @return the currently marked intent
- */
- public Intent current() {
- return all() ? null : intents.get(index);
- }
-
- @Override
- public String toString() {
- return "IntentSelection{" +
- "nodes=" + nodes +
- ", #intents=" + intents.size() +
- ", index=" + index +
- '}';
- }
-
-}