blob: f8c30bca4e46c417ae8d69361d8eb59986dd7d02 [file] [log] [blame]
bharat saraswalf7364db2015-08-11 13:39:31 +05301/*
Brian O'Connor5ab426f2016-04-09 01:19:45 -07002 * Copyright 2015-present Open Networking Laboratory
bharat saraswalf7364db2015-08-11 13:39:31 +05303 *
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 */
16
17package org.onosproject.pcepio.protocol.ver1;
18
19import org.onosproject.pcepio.protocol.PcInitiatedLspRequest;
20import org.onosproject.pcepio.protocol.PcepAttribute;
21import org.onosproject.pcepio.protocol.PcepBandwidthObject;
22import org.onosproject.pcepio.protocol.PcepCloseMsg;
23import org.onosproject.pcepio.protocol.PcepEndPointsObject;
24import org.onosproject.pcepio.protocol.PcepEroObject;
Mahesh Poojary S1c356e32015-08-21 15:05:30 +053025import org.onosproject.pcepio.protocol.PcepErrorInfo;
26import org.onosproject.pcepio.protocol.PcepError;
27import org.onosproject.pcepio.protocol.PcepErrorMsg;
28import org.onosproject.pcepio.protocol.PcepErrorObject;
bharat saraswalf7364db2015-08-11 13:39:31 +053029import org.onosproject.pcepio.protocol.PcepFactory;
bharat saraswale2e7a002015-08-21 22:47:30 +053030import org.onosproject.pcepio.protocol.PcepFecObjectIPv4Adjacency;
bharat saraswalf7364db2015-08-11 13:39:31 +053031import org.onosproject.pcepio.protocol.PcepInitiateMsg;
bharat saraswale2e7a002015-08-21 22:47:30 +053032import org.onosproject.pcepio.protocol.PcepIroObject;
bharat saraswalf7364db2015-08-11 13:39:31 +053033import org.onosproject.pcepio.protocol.PcepKeepaliveMsg;
bharat saraswale2e7a002015-08-21 22:47:30 +053034import org.onosproject.pcepio.protocol.PcepLabelObject;
35import org.onosproject.pcepio.protocol.PcepLabelRangeObject;
36import org.onosproject.pcepio.protocol.PcepLabelRangeResvMsg;
37import org.onosproject.pcepio.protocol.PcepLabelUpdate;
38import org.onosproject.pcepio.protocol.PcepLabelUpdateMsg;
bharat saraswalf7364db2015-08-11 13:39:31 +053039import org.onosproject.pcepio.protocol.PcepLspObject;
40import org.onosproject.pcepio.protocol.PcepLspaObject;
41import org.onosproject.pcepio.protocol.PcepMessage;
42import org.onosproject.pcepio.protocol.PcepMessageReader;
43import org.onosproject.pcepio.protocol.PcepMetricObject;
44import org.onosproject.pcepio.protocol.PcepMsgPath;
Mahesh Poojary S1c356e32015-08-21 15:05:30 +053045import org.onosproject.pcepio.protocol.PcepOpenMsg;
46import org.onosproject.pcepio.protocol.PcepOpenObject;
bharat saraswale2e7a002015-08-21 22:47:30 +053047import org.onosproject.pcepio.protocol.PcepReportMsg;
48import org.onosproject.pcepio.protocol.PcepRroObject;
bharat saraswalf7364db2015-08-11 13:39:31 +053049import org.onosproject.pcepio.protocol.PcepSrpObject;
bharat saraswale2e7a002015-08-21 22:47:30 +053050import org.onosproject.pcepio.protocol.PcepStateReport;
bharat saraswalf7364db2015-08-11 13:39:31 +053051import org.onosproject.pcepio.protocol.PcepUpdateMsg;
52import org.onosproject.pcepio.protocol.PcepUpdateRequest;
53import org.onosproject.pcepio.protocol.PcepVersion;
54
Phanendra Manda51fb9c22015-09-01 16:17:41 +053055/**
56 * Provides PCEP Factory and returns builder classes for all objects and messages.
57 */
bharat saraswalf7364db2015-08-11 13:39:31 +053058public class PcepFactoryVer1 implements PcepFactory {
59
60 public static final PcepFactoryVer1 INSTANCE = new PcepFactoryVer1();
61
62 @Override
Mahesh Poojary S1c356e32015-08-21 15:05:30 +053063 public PcepOpenMsg.Builder buildOpenMsg() {
64 return new PcepOpenMsgVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +053065 }
66
67 @Override
Mahesh Poojary S1c356e32015-08-21 15:05:30 +053068 public PcepOpenObject.Builder buildOpenObject() {
69 return new PcepOpenObjectVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +053070 }
71
72 @Override
73 public PcepKeepaliveMsg.Builder buildKeepaliveMsg() {
74 return new PcepKeepaliveMsgVer1.Builder();
75 }
76
77 @Override
78 public PcepCloseMsg.Builder buildCloseMsg() {
79 return new PcepCloseMsgVer1.Builder();
80 }
81
82 @Override
83 public PcepUpdateMsg.Builder buildUpdateMsg() {
84 return new PcepUpdateMsgVer1.Builder();
85 }
86
87 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +053088 public PcepReportMsg.Builder buildReportMsg() {
89 return new PcepReportMsgVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +053090 }
91
92 @Override
93 public PcepInitiateMsg.Builder buildPcepInitiateMsg() {
94 return new PcepInitiateMsgVer1.Builder();
95 }
96
97 @Override
98 public PcepLspObject.Builder buildLspObject() {
99 return new PcepLspObjectVer1.Builder();
100 }
101
102 @Override
103 public PcepMessageReader<PcepMessage> getReader() {
104 return PcepMessageVer1.READER;
105 }
106
107 @Override
108 public PcepVersion getVersion() {
109 return PcepVersion.PCEP_1;
110 }
111
112 @Override
113 public PcepSrpObject.Builder buildSrpObject() {
114 return new PcepSrpObjectVer1.Builder();
115 }
116
117 @Override
118 public PcepEndPointsObject.Builder buildEndPointsObject() {
119 return new PcepEndPointsObjectVer1.Builder();
120 }
121
122 @Override
123 public PcepEroObject.Builder buildEroObject() {
124 return new PcepEroObjectVer1.Builder();
125 }
126
127 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530128 public PcepRroObject.Builder buildRroObject() {
129 return new PcepRroObjectVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530130 }
131
132 @Override
133 public PcepLspaObject.Builder buildLspaObject() {
134 return new PcepLspaObjectVer1.Builder();
135 }
136
137 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530138 public PcepIroObject.Builder buildIroObject() {
139 return new PcepIroObjectVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530140 }
141
142 @Override
143 public PcepMetricObject.Builder buildMetricObject() {
144 return new PcepMetricObjectVer1.Builder();
145 }
146
147 @Override
148 public PcepBandwidthObject.Builder buildBandwidthObject() {
149 return new PcepBandwidthObjectVer1.Builder();
150 }
151
152 @Override
153 public PcepMsgPath.Builder buildPcepMsgPath() {
154 return new PcepMsgPathVer1.Builder();
155 }
156
157 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530158 public PcepStateReport.Builder buildPcepStateReport() {
159 return new PcepStateReportVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530160 }
161
162 @Override
163 public PcepUpdateRequest.Builder buildPcepUpdateRequest() {
164 return new PcepUpdateRequestVer1.Builder();
165 }
166
167 @Override
168 public PcInitiatedLspRequest.Builder buildPcInitiatedLspRequest() {
169 return new PcInitiatedLspRequestVer1.Builder();
170 }
171
172 @Override
173 public PcepAttribute.Builder buildPcepAttribute() {
174 return new PcepAttributeVer1.Builder();
175 }
176
177 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530178 public PcepLabelUpdateMsg.Builder buildPcepLabelUpdateMsg() {
179 return new PcepLabelUpdateMsgVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530180 }
181
182 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530183 public PcepLabelUpdate.Builder buildPcepLabelUpdateObject() {
184 return new PcepLabelUpdateVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530185 }
186
187 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530188 public PcepLabelObject.Builder buildLabelObject() {
189 return new PcepLabelObjectVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530190 }
191
192 @Override
Mahesh Poojary S1c356e32015-08-21 15:05:30 +0530193 public PcepErrorMsg.Builder buildPcepErrorMsg() {
194 return new PcepErrorMsgVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530195 }
196
197 @Override
Mahesh Poojary S1c356e32015-08-21 15:05:30 +0530198 public PcepErrorObject.Builder buildPcepErrorObject() {
199 return new PcepErrorObjectVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530200 }
201
202 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530203 public PcepFecObjectIPv4Adjacency.Builder buildFecIpv4Adjacency() {
204 return new PcepFecObjectIPv4AdjacencyVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530205 }
206
207 @Override
Mahesh Poojary S1c356e32015-08-21 15:05:30 +0530208 public PcepErrorInfo.Builder buildPcepErrorInfo() {
209 return new PcepErrorInfoVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530210 }
211
212 @Override
Mahesh Poojary S1c356e32015-08-21 15:05:30 +0530213 public PcepError.Builder buildPcepError() {
214 return new PcepErrorVer1.Builder();
bharat saraswalf7364db2015-08-11 13:39:31 +0530215 }
216
bharat saraswale1806302015-08-21 12:16:46 +0530217 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530218 public PcepLabelRangeObject.Builder buildPcepLabelRangeObject() {
219 return new PcepLabelRangeObjectVer1.Builder();
bharat saraswale1806302015-08-21 12:16:46 +0530220 }
221
222 @Override
bharat saraswale2e7a002015-08-21 22:47:30 +0530223 public PcepLabelRangeResvMsg.Builder buildPcepLabelRangeResvMsg() {
224 return new PcepLabelRangeResvMsgVer1.Builder();
bharat saraswale1806302015-08-21 12:16:46 +0530225 }
bharat saraswalf7364db2015-08-11 13:39:31 +0530226}