blob: e2ad069ce7daf6bbbb7987b3b809538bf2a025fa [file] [log] [blame]
Thomas Vachuska58de4162015-09-10 16:15:33 -07001/*
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 */
Sho SHIMIZU74361c12015-08-11 12:31:48 -070016package org.onosproject.pcepio.types;
17
18import java.util.LinkedList;
Sho SHIMIZU74361c12015-08-11 12:31:48 -070019
20import org.onosproject.pcepio.protocol.PcepLabelObject;
21import org.onosproject.pcepio.protocol.PcepLspObject;
22import org.onosproject.pcepio.protocol.PcepSrpObject;
23import org.slf4j.Logger;
24import org.slf4j.LoggerFactory;
25
bharat saraswalf7364db2015-08-11 13:39:31 +053026import com.google.common.base.MoreObjects;
27
28/**
Sho SHIMIZU74361c12015-08-11 12:31:48 -070029 * Provides Pcep Label.
30 * REference :draft-zhao-pce-pcep-extension-for-pce-controller-01.
31 */
32public class PcepLabelDownload {
33
34 protected static final Logger log = LoggerFactory.getLogger(PcepLabelDownload.class);
35
36 //PCEP SPR Object
bharat saraswalf7364db2015-08-11 13:39:31 +053037 private PcepSrpObject srpObject;
Sho SHIMIZU74361c12015-08-11 12:31:48 -070038 //PCEP LSP Object
bharat saraswalf7364db2015-08-11 13:39:31 +053039 private PcepLspObject lspObject;
Sho SHIMIZU74361c12015-08-11 12:31:48 -070040 //LinkList of Labels
bharat saraswalf7364db2015-08-11 13:39:31 +053041 private LinkedList<PcepLabelObject> llLabelList;
Sho SHIMIZU74361c12015-08-11 12:31:48 -070042
bharat saraswalf7364db2015-08-11 13:39:31 +053043 /**
Sho SHIMIZU74361c12015-08-11 12:31:48 -070044 * Returns SRP Object.
45 *
46 * @return PCEP SRP Object
47 */
48 public PcepSrpObject getSrpObject() {
49 return srpObject;
50 }
51
bharat saraswalf7364db2015-08-11 13:39:31 +053052 /**
bharat saraswale1806302015-08-21 12:16:46 +053053 * Sets the Pcep SRP Object.
Sho SHIMIZU74361c12015-08-11 12:31:48 -070054 *
55 * @param srpobj PCEP SRP Object
56 */
57 public void setSrpObject(PcepSrpObject srpobj) {
58 this.srpObject = srpobj;
59 }
60
bharat saraswalf7364db2015-08-11 13:39:31 +053061 /**
Sho SHIMIZU74361c12015-08-11 12:31:48 -070062 * Returns LSP Object.
63 *
64 * @return PCEP LSP Object
65 */
66 public PcepLspObject getLspObject() {
67 return lspObject;
68 }
69
bharat saraswalf7364db2015-08-11 13:39:31 +053070 /**
Sho SHIMIZU74361c12015-08-11 12:31:48 -070071 * Sets the Pcep LSP Object.
72 *
73 * @param lspObject PCEP LSP Object
74 */
75 public void setLspObject(PcepLspObject lspObject) {
76 this.lspObject = lspObject;
77 }
78
bharat saraswalf7364db2015-08-11 13:39:31 +053079 /**
Sho SHIMIZU74361c12015-08-11 12:31:48 -070080 * Returns a list of labels.
81 *
82 * @return llLabelList list of pcep label objects
83 */
84 public LinkedList<PcepLabelObject> getLabelList() {
85 return llLabelList;
86 }
87
bharat saraswalf7364db2015-08-11 13:39:31 +053088 /**
Sho SHIMIZU74361c12015-08-11 12:31:48 -070089 * set the llLabelList list of type PcepLableObject.
90 *
91 * @param llLabelList list of pcep label objects
92 */
93 public void setLabelList(LinkedList<PcepLabelObject> llLabelList) {
94 this.llLabelList = llLabelList;
95 }
96
bharat saraswalf7364db2015-08-11 13:39:31 +053097 @Override
98 public String toString() {
Sho SHIMIZU7cdbcf72015-09-03 14:43:05 -070099 return MoreObjects.toStringHelper(getClass())
100 .add("SrpObject", srpObject)
101 .add("LspObject", lspObject)
102 .add("LabelObjectList", llLabelList)
103 .toString();
bharat saraswalf7364db2015-08-11 13:39:31 +0530104 }
Sho SHIMIZU74361c12015-08-11 12:31:48 -0700105}