aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/apps/pcep-api
diff options
context:
space:
mode:
authorCNlucius <lukai1@huawei.com>2016-09-13 11:40:12 +0800
committerCNlucius <lukai1@huawei.com>2016-09-13 11:41:53 +0800
commitb731e2f1dd0972409b136aebc7b463dd72c9cfad (patch)
tree5107d7d80c19ad8076c2c97c2b5ef8d1cf3ab903 /framework/src/onos/apps/pcep-api
parentee93993458266114c29271a481ef9ce7ce621b2a (diff)
ONOSFW-171
O/S-SFC-ONOS scenario documentation Change-Id: I51ae1cf736ea24ab6680f8edca1b2bf5dd598365 Signed-off-by: CNlucius <lukai1@huawei.com>
Diffstat (limited to 'framework/src/onos/apps/pcep-api')
-rw-r--r--framework/src/onos/apps/pcep-api/pom.xml29
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepController.java122
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepDpid.java101
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepHopNodeDescription.java62
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLink.java136
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLinkListener.java30
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepOperator.java35
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitch.java92
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitchListener.java44
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnel.java191
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelListener.java40
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelStatistics.java65
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/package-info.java20
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/PcepTools.java119
-rw-r--r--framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/package-info.java19
15 files changed, 0 insertions, 1105 deletions
diff --git a/framework/src/onos/apps/pcep-api/pom.xml b/framework/src/onos/apps/pcep-api/pom.xml
deleted file mode 100644
index 2e5be63b..00000000
--- a/framework/src/onos/apps/pcep-api/pom.xml
+++ /dev/null
@@ -1,29 +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.
- -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.onosproject</groupId>
- <artifactId>onos-apps</artifactId>
- <version>1.4.0-rc1</version>
- </parent>
- <artifactId>onos-app-pcep-api</artifactId>
- <packaging>bundle</packaging>
-
- <description>PCEP protocol API</description>
-</project> \ No newline at end of file
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepController.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepController.java
deleted file mode 100644
index a14dcd12..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepController.java
+++ /dev/null
@@ -1,122 +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.pcep.api;
-
-import org.onosproject.net.DeviceId;
-
-/**
- * Abstraction of an PCEP controller. Serves as a one stop shop for obtaining
- * PCEP devices and (un)register listeners on PCEP events
- */
-public interface PcepController {
-
- /**
- * Returns all switches known to this PCEP controller.
- *
- * @return Iterable of did elements
- */
- Iterable<PcepSwitch> getSwitches();
-
- /**
- * Return a switch with a specified did.
- *
- * @param did of a device
- * @return a pcep device
- */
- PcepSwitch getSwitch(PcepDpid did);
-
- /**
- * Register a listener for meta events that occur to PCEP devices.
- *
- * @param listener the listener to notify
- */
- void addListener(PcepSwitchListener listener);
-
- /**
- * Unregister a listener.
- *
- * @param listener the listener to unregister
- */
- void removeListener(PcepSwitchListener listener);
-
- /**
- * Register a listener for meta events that occur to PCEP links.
- *
- * @param listener the listener to notify
- */
- void addLinkListener(PcepLinkListener listener);
-
- /**
- * Unregister a link listener.
- *
- * @param listener the listener to unregister
- */
- void removeLinkListener(PcepLinkListener listener);
-
- /**
- * Register a listener for meta events that occur to PCEP tunnel.
- *
- * @param listener the listener to notify
- */
- void addTunnelListener(PcepTunnelListener listener);
-
- /**
- * Unregister a tunnel listener.
- *
- * @param listener the listener to unregister
- */
- void removeTunnelListener(PcepTunnelListener listener);
-
- /**
- * Setup a tunnel through pcep controller.
- *
- * @param srcDid src deviceId of tunnel
- * @param dstDid dst deviceId of tunnel
- * @param srcPort src port
- * @param dstPort dst port
- * @param bandwidth andwidth of tunnel
- * @param name tunnel name
- * @return pcep tunnel
- */
- PcepTunnel applyTunnel(DeviceId srcDid, DeviceId dstDid,
- long srcPort, long dstPort, long bandwidth,
- String name);
-
- /**
- * Delete tunnel by id.
- *
- * @param id pcep tunnel id.
- * @return true or false
- */
- Boolean deleteTunnel(String id);
-
- /**
- * Update tunnel bandwidth by tunnel id.
- *
- * @param id tunnel id
- * @param bandwidth bandwidth of a tunnel
- * @return true or false
- */
- Boolean updateTunnelBandwidth(String id, long bandwidth);
-
- /**
- * Send statistic request by tunnel id.
- *
- * @param pcepTunnelId PCEP tunnel id
- */
- void getTunnelStatistics(String pcepTunnelId);
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepDpid.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepDpid.java
deleted file mode 100644
index 9d324e77..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepDpid.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright 2014 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.pcep.api;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-
-import org.onosproject.pcep.tools.PcepTools;
-
-/**
- * The class representing a network switch PCEPDid. This class is immutable.
- */
-public final class PcepDpid {
-
- private static final String SCHEME = "pcep";
- private static final long UNKNOWN = 0;
- private long nodeId;
-
- /**
- * Default constructor.
- */
- public PcepDpid() {
- this.nodeId = PcepDpid.UNKNOWN;
- }
-
- /**
- * Constructor from a long value.
- *
- * @param value long value for construct
- */
- public PcepDpid(long value) {
- this.nodeId = value;
- }
-
- /**
- * Constructor from a String.
- *
- * @param value string value for construct
- */
- public PcepDpid(String value) {
- this.nodeId = Long.parseLong(value, 16);
- }
-
- /**
- * Produces device URI from the given DPID.
- *
- * @param dpid device dpid
- * @return device URI
- */
- public static URI uri(PcepDpid dpid) {
- return uri(dpid.nodeId);
- }
-
- /**
- * Produces device long from the given string which comes from the uri
- * method.
- *
- * @param value string value which produced by uri method.
- * @return a long value.
- */
- public static long toLong(String value) {
- return PcepTools.ipToLong(value.replace(SCHEME, ""));
- }
-
- /**
- * Produces device URI from the given DPID long.
- *
- * @param value device dpid as long
- * @return device URI
- */
- public static URI uri(long value) {
- try {
- return new URI(SCHEME, PcepTools.longToIp(value), null);
- } catch (URISyntaxException e) {
- return null;
- }
- }
-
- /**
- * Return a device id with the form of long.
- *
- * @return long value
- */
- public long value() {
- return this.nodeId;
- }
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepHopNodeDescription.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepHopNodeDescription.java
deleted file mode 100644
index 281f32f3..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepHopNodeDescription.java
+++ /dev/null
@@ -1,62 +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.pcep.api;
-
-/**
- * Description of a pcep tunnel hop node.a hop list consists of a number of hop
- * node.
- */
-public class PcepHopNodeDescription {
- private PcepDpid deviceId;
- private long portNum;
-
- /**
- * Get the pcepdpid of a node.
- *
- * @return device pcepdpid.
- */
- public PcepDpid getDeviceId() {
- return deviceId;
- }
-
- /**
- * Set the pcepdpid of a node.
- *
- * @param deviceId pcep dpid of a node.
- */
- public void setDeviceId(PcepDpid deviceId) {
- this.deviceId = deviceId;
- }
-
- /**
- * Get the port number of a node.
- *
- * @return port number.
- */
- public long getPortNum() {
- return portNum;
- }
-
- /**
- * Set the port number of a node.
- *
- * @param portNum port number of a node.
- */
- public void setPortNum(long portNum) {
- this.portNum = portNum;
- }
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLink.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLink.java
deleted file mode 100644
index 4dc05de1..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLink.java
+++ /dev/null
@@ -1,136 +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.pcep.api;
-
-import org.onosproject.net.Port;
-
-/**
- * Abstraction of a network infrastructure link.
- */
-public interface PcepLink extends PcepOperator {
-
- enum SubType {
- /**
- * Optical Transmission Section Link.
- */
- OTS,
-
- /**
- * Optical Physical Section Link.
- */
- OPS,
-
- /**
- * User-to-Network Interface Link.
- */
- UNI,
-
- /**
- * Optical channel Data Unit-k link.
- */
- ODUk,
-
- /**
- * Optical Transport Network link.
- */
- OTU,
- }
-
-
- enum PortType {
- ODU_PORT, OCH_PORT, OMS_PORT
- }
-
- /**
- * Returns the link endpoint port type.
- *
- * @return endpoint port type
- */
- PortType portType();
-
- /**
- * Returns the link sub type,OTS,OPS,PKT_OPTICAL or ODUK.
- *
- * @return link subType
- */
-
- SubType linkSubType();
-
- /**
- * Returns the link state, up or down.
- *
- * @return link state
- */
- String linkState();
-
- /**
- * Returns the distance of a link.
- *
- * @return distance
- */
- int linkDistance();
-
- /**
- * Returns the capacity type of a link,1: WAVELENGTHNUM, 2:SLOTNUM, 3,
- * BANDWIDTH.
- *
- * @return capacity type
- */
- String linkCapacityType();
-
- /**
- * Returns the available capacity value ,such as available bandwidth.
- *
- * @return availValue
- */
- int linkAvailValue();
-
- /**
- * Returns the max capacity value ,such as max bandwidth.
- *
- * @return maxValue
- */
- int linkMaxValue();
-
- /**
- * Returns the source device did of a link.
- *
- * @return source did
- */
- PcepDpid linkSrcDeviceID();
-
- /**
- * Returns the destination device did of a link.
- *
- * @return destination did
- */
- PcepDpid linkDstDeviceId();
-
- /**
- * Returns the source port of a link.
- *
- * @return port number
- */
- Port linkSrcPort();
-
- /**
- * Returns the destination port of a link.
- *
- * @return port number
- */
- Port linkDstPort();
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLinkListener.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLinkListener.java
deleted file mode 100644
index 608ef1bf..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepLinkListener.java
+++ /dev/null
@@ -1,30 +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.pcep.api;
-
-/**
- * Allows for providers interested in Link events to be notified.
- */
-public interface PcepLinkListener {
-
- /**
- * Notify that get a packet of link from network and need do some
- * processing.
- *
- * @param link pcep link
- */
- void handlePCEPlink(PcepLink link);
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepOperator.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepOperator.java
deleted file mode 100644
index 452244da..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepOperator.java
+++ /dev/null
@@ -1,35 +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.pcep.api;
-
-/**
- * A interface defined operator type, and provide a method to get the operator
- * type.
- */
-public interface PcepOperator {
-
- enum OperationType {
-
- ADD, UPDATE, DELETE,
- }
-
- /**
- * Get operate type of a event,such as device add ,device update.
- *
- * @return operation type.
- */
- OperationType getOperationType();
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitch.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitch.java
deleted file mode 100644
index 94f73dc3..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitch.java
+++ /dev/null
@@ -1,92 +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.pcep.api;
-
-/*
- * Represent to provider facing side of a switch
- */
-public interface PcepSwitch extends PcepOperator {
-
- enum DeviceType {
- /* optical device */
- ROADM,
-
- /* electronic device */
- OTN,
-
- /* router */
- ROUTER,
-
- /* unkown type */
- UNKNOW,
- }
-
- /**
- * Gets a string version of the ID for this switch.
- * @return string version of the ID
- */
- String getStringId();
-
- /**
- * Gets the datapathId of the switch.
- * @return the switch dpid in long format
- */
- long getId();
-
- long getNeId();
-
- /**
- * Gets the sub type of the device.
- * @return the sub type
- */
- DeviceType getDeviceType();
-
- /**
- * fetch the manufacturer description.
- * @return the description
- */
- String manufacturerDescription();
-
- /**
- * fetch the datapath description.
- * @return the description
- */
- String datapathDescription();
-
- /**
- * fetch the hardware description.
- * @return the description
- */
- String hardwareDescription();
-
- /**
- * fetch the software description.
- * @return the description
- */
- String softwareDescription();
-
- /**
- * fetch the serial number.
- * @return the serial
- */
- String serialNumber();
-
- /**
- * Indicates if this switch is optical.
- * @return true if optical
- */
- boolean isOptical();
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitchListener.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitchListener.java
deleted file mode 100644
index 2017e739..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepSwitchListener.java
+++ /dev/null
@@ -1,44 +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.pcep.api;
-
-/**
- * Notifies providers about switch in events.
- */
-public interface PcepSwitchListener {
-
- /**
- * Notify that the switch was added.
- *
- * @param dpid the switch where the event occurred
- */
- void switchAdded(PcepDpid dpid);
-
- /**
- * Notify that the switch was removed.
- *
- * @param dpid the switch where the event occurred.
- */
- void switchRemoved(PcepDpid dpid);
-
- /**
- * Notify that the switch has changed in some way.
- *
- * @param dpid the switch that changed
- */
- void switchChanged(PcepDpid dpid);
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnel.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnel.java
deleted file mode 100644
index 6b0a7e69..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnel.java
+++ /dev/null
@@ -1,191 +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.pcep.api;
-
-import java.util.List;
-
-/**
- * Abstraction of a generalized PCEP Tunnel entity (bandwidth pipe) for L2
- * networks or L1/L0 networks, representation of e.g., VLAN, L1 ODUk connection,
- * WDM OCH, etc..
- */
-public interface PcepTunnel extends PcepOperator {
-
- /**
- * Describe the type of a tunnel.
- */
- enum Type {
-
- /**
- * Signifies that this is a L0 OCH tunnel.
- */
- OCH,
-
- /**
- * Signifies that this is a L1 OTN tunnel.
- */
- OTN,
-
- /**
- * Signifies that this is a L2 tunnel.
- */
- UNI,
- }
-
- /**
- * The ability of a tunnel.
- */
- enum Ability {
- /**
- * no protected tunnel,if the tunnel is broken ,then the user is out of
- * service.
- */
- NOPROTECTED,
-
- /**
- * tunnel with rerouter ability.if a tunnel is broken, the tunnel will
- * try to find another path to provider service.
- */
- SILVER,
-
- /**
- * tunnel with 1 + 1 rerouter ability.if a tunnel is broken, there'll be
- * another tunnel providing service at once.
- */
- DIAMOND
- }
-
- enum PATHTYPE {
-
- /**
- * Indicates path is the preferred path.
- */
- FIRST,
-
- /**
- * Indicates path is the alternate path.
- */
- SECOND
- }
-
- /**
- * Represents state of the path, work normally or broken down.
- */
- enum PathState {
- NORMAL, BROKEN
- }
-
- /**
- * Returns the type of a tunnel.
- *
- * @return tunnel type
- */
- Type type();
-
- /**
- * Returns the name of a tunnel.
- *
- * @return tunnel name
- */
- String name();
-
- /**
- * Returns the device id of destination endpoint of a tunnel.
- *
- * @return device id
- */
- PcepDpid srcDeviceID();
-
- /**
- * Returns the device id of source endpoint of a tunnel.
- *
- * @return device id
- */
- PcepDpid dstDeviceId();
-
- /**
- * Returns source port of a tunnel.
- *
- * @return port number
- */
- long srcPort();
-
- /**
- * Returns destination port of a tunnel.
- *
- * @return port number
- */
- long dstPort();
-
- /**
- * Returns the bandwidth of a tunnel.
- *
- * @return bandwidth
- */
- long bandWidth();
-
- /**
- * Returns the tunnel id.
- *
- * @return id of the PCEP tunnel
- */
- long id();
-
- /**
- * Returns the detail hop list of a tunnel.
- *
- * @return hop list
- */
- List<PcepHopNodeDescription> getHopList();
-
- /**
- * Returns the instance of a pcep tunnel,a instance is used to mark the times of
- * a tunnel created. instance and id identify a tunnel together.
- *
- * @return the instance of a tunnel.
- */
- int getInstance();
-
- /**
- * Returns the state of a path.
- *
- * @return normal or broken
- */
- PathState getPathState();
-
- /**
- * Returns the ability of a tunnel.
- *
- * @return ability of the tunenl
- */
- Ability getSla();
-
- /**
- * Returns the path type of a path if the tunnel's ability is diamond .
- *
- * @return the type of a path, the preferred or alternate.
- */
- PATHTYPE getPathType();
-
- /**
- * Get the under lay tunnel id of VLAN tunnel.
- *
- * @return the tunnel id of a OCH tunnel under lay of a VLAN tunnel.
- */
- long underlayTunnelId();
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelListener.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelListener.java
deleted file mode 100644
index 8b64b923..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelListener.java
+++ /dev/null
@@ -1,40 +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.pcep.api;
-
-/**
- * Allows for providers interested in tunnel events to be notified.
- */
-public interface PcepTunnelListener {
-
- /**
- * Notify that get a packet of tunnel from network and need do some
- * processing.
- *
- * @param tunnel a pceptunnel.
- */
- void handlePCEPTunnel(PcepTunnel tunnel);
-
- /**
- * Notify that get a tunnel statistic data from the network.
- *
- * @param tunnelStatistics tunnel statistic information.
- */
- void handlePcepTunnelStatistics(PcepTunnelStatistics tunnelStatistics);
-
-
-
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelStatistics.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelStatistics.java
deleted file mode 100644
index 20ed00e3..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/PcepTunnelStatistics.java
+++ /dev/null
@@ -1,65 +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.pcep.api;
-
-import java.time.Duration;
-import java.util.List;
-
-/**
- * Statistics of a PCEP tunnel.
- */
-public interface PcepTunnelStatistics {
-
-
- /**
- * Returns the id of PCEP tunnel.
- *
- * @return PCEP tunnel id
- */
- long id();
-
-
- /**
- * Returns the bandwidth utilization of a PCEP tunnel.
- *
- * @return PCEP bandwidth utilization
- */
- double bandwidthUtilization();
-
- /**
- * Returns the flow loss rate of a tunnel.
- *
- * @return tunnel flow loss rate
- */
- double packetLossRate();
-
- /**
- * Returns the end-to-end traffic flow delay of a tunnel.
- *
- * @return tunnel traffic flow delay
- */
- Duration flowDelay();
-
- /**
- * Returns the alarms on a tunnel.
- *
- * @return tunnel alarms
- */
- List<String> alarms();
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/package-info.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/package-info.java
deleted file mode 100644
index 61c8290d..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/api/package-info.java
+++ /dev/null
@@ -1,20 +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.
- */
-
-/**
- * PCEP controller API.
- */
-package org.onosproject.pcep.api; \ No newline at end of file
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/PcepTools.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/PcepTools.java
deleted file mode 100644
index 28eaebdd..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/PcepTools.java
+++ /dev/null
@@ -1,119 +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.pcep.tools;
-
-import javax.xml.bind.DatatypeConverter;
-
-/**
- * tools fo pcep app.
- */
-public abstract class PcepTools {
-
- private PcepTools() {
-
- }
-
- /**
- * Converts decimal byte array to a hex string.
- *
- * @param byteArray byte array
- * @return a hex string
- */
- public static String toHexString(byte[] byteArray) {
- return DatatypeConverter.printHexBinary(byteArray);
- }
-
- /**
- * Converts a hex string to a decimal byte array.
- *
- * @param hexString a hex string
- * @return byte array
- */
- public static byte[] toByteArray(String hexString) {
- return DatatypeConverter.parseHexBinary(hexString);
- }
-
- /**
- * Converts a byte array to a decimal string.
- *
- * @param bytes a byte array
- * @return a decimal string
- */
- public static String toDecimalString(byte[] bytes) {
- String str = "";
- for (int i = 0; i < bytes.length; i++) {
- str += String.valueOf(bytes[i]);
- }
- return str;
- }
-
- /**
- * convert a string to the form of ip address.
- *
- * @param str a string
- * @return a string with ip format
- */
- public static String stringToIp(String str) {
- long ipInt = Long.parseLong(str, 16);
- return longToIp(ipInt);
- }
-
- /**
- * convert a long to ip format.
- *
- * @param ipLong a decimal number.
- * @return a ip format string
- */
- public static String longToIp(long ipLong) {
- StringBuilder sb = new StringBuilder();
- sb.append((ipLong >> 24) & 0xFF).append(".");
- sb.append((ipLong >> 16) & 0xFF).append(".");
- sb.append((ipLong >> 8) & 0xFF).append(".");
- sb.append(ipLong & 0xFF);
- return sb.toString();
- }
-
- /**
- * convert a string with ip format to a long.
- *
- * @param strIp a string with ip format
- * @return a long number
- */
- public static long ipToLong(String strIp) {
- long[] ip = new long[4];
- int position1 = strIp.indexOf(".");
- int position2 = strIp.indexOf(".", position1 + 1);
- int position3 = strIp.indexOf(".", position2 + 1);
- ip[0] = Long.parseLong(strIp.substring(0, position1));
- ip[1] = Long.parseLong(strIp.substring(position1 + 1, position2));
- ip[2] = Long.parseLong(strIp.substring(position2 + 1, position3));
- ip[3] = Long.parseLong(strIp.substring(position3 + 1));
- return (ip[0] << 24) + (ip[1] << 16) + (ip[2] << 8) + ip[3];
- }
-
- /**
- * get a integer value from a cut string.
- *
- * @param str a whole string
- * @param base cut the string from this index
- * @param offset the offset when execute the cut
- * @return a integer value
- */
- public static int tranferHexStringToInt(String str, int base, int offset) {
- return Integer.parseInt(str.substring(base, offset), 16);
-
- }
-}
diff --git a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/package-info.java b/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/package-info.java
deleted file mode 100644
index 8358a45f..00000000
--- a/framework/src/onos/apps/pcep-api/src/main/java/org/onosproject/pcep/tools/package-info.java
+++ /dev/null
@@ -1,19 +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.
- */
-/**
- * tools for pcep app.
- */
-package org.onosproject.pcep.tools; \ No newline at end of file