aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/OpticalPortConfig.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/OpticalPortConfig.java')
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/OpticalPortConfig.java190
1 files changed, 0 insertions, 190 deletions
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/OpticalPortConfig.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/OpticalPortConfig.java
deleted file mode 100644
index dfb494d6..00000000
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/config/basics/OpticalPortConfig.java
+++ /dev/null
@@ -1,190 +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.net.config.basics;
-
-import java.util.Optional;
-
-import org.onosproject.net.config.Config;
-import org.onosproject.net.ConnectPoint;
-import org.onosproject.net.Port;
-
-import com.fasterxml.jackson.databind.JsonNode;
-
-
-/**
- * Configurations for an optical port on a device.
- */
-public class OpticalPortConfig extends Config<ConnectPoint> {
- // optical type {OMS, OCH, ODUClt, fiber}
- public static final String TYPE = "type";
-
- // port name. "name" is the alphanumeric name of the port, but "port" refers
- // to the port number used as a name string (i.e., for ports without
- // alphanumeric names).
- public static final String NAME = "name";
- public static final String PORT = "port";
- public static final String STATIC_PORT = "staticPort";
- public static final String STATIC_LAMBDA = "staticLambda";
-
- // **Linc-OE : remove if it's not needed after all.**
- public static final String SPEED = "speed";
-
- /**
- * Returns the Enum value representing the type of port.
- *
- * @return the port type, or null if invalid or unset
- */
- public Port.Type type() {
- JsonNode type = object.path(TYPE);
- if (type.isMissingNode()) {
- return null;
- }
- return Port.Type.valueOf(type.asText());
- }
-
- /**
- * Returns the port name associated with this port configuration. The Name
- * is an alphanumeric string.
- *
- * @return the name of this port, else, an empty string
- */
- public String name() {
- return getStringValue(NAME);
- }
-
- /**
- * Returns a stringified representation of the port number, configured in
- * some port types without an alphanumeric name as the port name.
- *
- * @return A string representation of the port number
- */
- public String numberName() {
- return getStringValue(PORT);
- }
-
- /**
- * Returns the string-representation of name of the output port. This is
- * usually an OMS port for an OCH input ports, or an OCH port for ODU input
- * ports.
- *
- * @return the name of this port, else, an empty string
- */
- public String staticPort() {
- return getStringValue(STATIC_PORT);
- }
-
- private String getStringValue(String field) {
- JsonNode name = object.path(field);
- return name.isMissingNode() ? "" : name.asText();
- }
-
- /**
- * Returns the output lambda configured for this port. The lambda value is
- * expressed as a frequency value. If the port type doesn't have a notion of
- * lambdas, this returns an empty Optional.
- *
- * @return an Optional that may contain a frequency value.
- */
- public Optional<Long> staticLambda() {
- JsonNode sl = object.path(STATIC_LAMBDA);
- if (sl.isMissingNode()) {
- return Optional.empty();
- }
- return Optional.of(sl.asLong());
- }
-
- /**
- * Returns the port speed configured for this port. If the port doesn't have
- * a notion of speed, this returns an empty Optional.
- *
- * @return a port speed value whose default is 0.
- */
- public Optional<Integer> speed() {
- JsonNode s = object.path(SPEED);
- if (s.isMissingNode()) {
- return Optional.empty();
- }
- return Optional.of(s.asInt());
- }
-
- /**
- * Sets the port type, or updates it if it's already set. A null argument removes
- * this field.
- *
- * @param type the port type
- * @return this OpticalPortConfig instance
- */
- public OpticalPortConfig portType(Port.Type type) {
- // if unspecified, ideally fall back on FIBER or PACKET.
- String pt = (type == null) ? null : type.toString();
- return (OpticalPortConfig) setOrClear(TYPE, pt);
- }
-
- /**
- * Sets the port name, or updates it if already set. A null argument removes
- * this field.
- *
- * @param name the port's name
- * @return this OpticalPortConfig instance
- */
- public OpticalPortConfig portName(String name) {
- return (OpticalPortConfig) setOrClear(NAME, name);
- }
-
- /**
- * Sets the port name from port number, or updates it if already set. A null
- * argument removes this field.
- *
- * @param name the port number, to be used as name
- * @return this OpticalPortConfig instance
- */
- public OpticalPortConfig portNumberName(Long name) {
- return (OpticalPortConfig) setOrClear(PORT, name);
- }
-
- /**
- * Sets the output port name, or updates it if already set. A null argument
- * removes this field.
- *
- * @param name the output port's name
- * @return this OpticalPortConfig instance
- */
- public OpticalPortConfig staticPort(String name) {
- return (OpticalPortConfig) setOrClear(STATIC_PORT, name);
- }
-
- /**
- * Sets the output lambda index, or updates it if already set. A null argument
- * removes this field.
- *
- * @param index the output lambda
- * @return this OpticalPortConfig instance
- */
- public OpticalPortConfig staticLambda(Long index) {
- return (OpticalPortConfig) setOrClear(STATIC_LAMBDA, index);
- }
-
- /**
- * Sets the port speed, or updates it if already set. A null argument
- * removes this field.
- *
- * @param bw the port bandwidth
- * @return this OpticalPortConfig instance
- */
- public OpticalPortConfig speed(Integer bw) {
- return (OpticalPortConfig) setOrClear(SPEED, bw);
- }
-}