blob: d4db519f1c5285d1e53887f4c924b3acedc5b12a [file] [log] [blame]
cheng fan48e832c2015-05-29 01:54:47 +08001/*
2 * Copyright 2015 Open Networking Laboratory
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.pcep.api;
17
18/**
19 * Abstraction of a huawei network infrastructure link.
20 */
21public interface PcepLink extends PcepOperator {
22
23 public enum SubType {
24 /**
25 * Optical Transmission Section Link.
26 */
27 OTS,
28
29 /**
30 * Optical Physical Section Link.
31 */
32 OPS,
33
34 /**
35 * User-to-Network Interface Link.
36 */
37 UNI,
38
39 /**
40 * Optical channel Data Unit-k link.
41 */
42 ODUk,
43
44 /**
45 * Optical Transport Network link.
46 */
47 OTU,
48 }
49
50
51
52 /**
53 * Get the link endpoint port type.
54 *
55 * @return endpoint port type
56 */
57 public String portType();
58
59 /**
60 * Get the link sub type,OTS,OPS,PKT_OPTICAL or ODUK.
61 *
62 * @return link subType
63 */
64
65 public SubType linkSubType();
66
67 /**
68 * Get the link state, up or down.
69 *
70 * @return link state
71 */
72 public String linkState();
73
74 /**
75 * Get the distance of a link.
76 *
77 * @return distance
78 */
79 public int linkDistance();
80
81 /**
82 * Get the capacity type of a link,1: WAVELENGTHNUM, 2:SLOTNUM, 3,
83 * BANDWIDTH.
84 *
85 * @return capacity type
86 */
87 public String linkCapacityType();
88
89 /**
90 * Get the available capacity value ,such as available bandwidth.
91 *
92 * @return availValue
93 */
94 public int linkAvailValue();
95
96 /**
97 * Get the max capacity value ,such as max bandwidth.
98 *
99 * @return maxValue
100 */
101 public int linkMaxValue();
102
103 /**
104 * Get the source device did of a link.
105 *
106 * @return source did
107 */
108 public PcepDpid linkSrcDeviceID();
109
110 /**
111 * Get the destination device did of a link.
112 *
113 * @return destination did
114 */
115 public PcepDpid linkDstDeviceId();
116
117 /**
118 * Get the source port number of a link,the port consists of shelf id, sub
119 * card id, board id, and port id of a Huawei Device.
120 *
121 * @return port number
122 */
123 public long linkSrcPort();
124
125 /**
126 * Get the destination port number of a link,the port consists of shelf id,
127 * sub card id, board id, and port id of a Huawei Device.
128 *
129 * @return port number
130 */
131 public long linkDstPort();
132
133}