blob: 080f7127ed646f7c2cd65af4f28b0767756f4198 [file] [log] [blame]
hirokif4ed5212018-05-26 22:39:38 -07001/*
2 * Copyright 2018-present Open Networking Foundation
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 */
16
17package org.onosproject.odtn.utils.tapi;
18
hiroki96ab3c22018-12-11 14:10:52 -080019import org.onosproject.yang.gen.v1.tapicommon.rev20181210.tapicommon.Uuid;
20import org.onosproject.yang.gen.v1.tapiconnectivity.rev20181210.tapiconnectivity.ceplist.ConnectionEndPoint;
21import org.onosproject.yang.gen.v1.tapiconnectivity.rev20181210.tapiconnectivity.connection.DefaultConnectionEndPoint;
22import org.onosproject.yang.gen.v1.tapiconnectivity.rev20181210.tapiconnectivity.connectionendpoint.ParentNodeEdgePoint;
hirokif4ed5212018-05-26 22:39:38 -070023import org.onosproject.yang.model.ModelObjectId;
24
25/**
26 * Utility class to deal with TAPI CepRef with DCS.
27 */
28public final class TapiCepRefHandler extends TapiObjectHandler<DefaultConnectionEndPoint> {
29
30 private TapiCepRefHandler() {
31 obj = new DefaultConnectionEndPoint();
32 }
33
34 public static TapiCepRefHandler create() {
35 return new TapiCepRefHandler();
36 }
37
38 @Override
39 protected Uuid getIdDetail() {
hirokid8fd7862018-10-09 15:24:24 +090040 return (Uuid) obj.connectionEndPointUuid();
hirokif4ed5212018-05-26 22:39:38 -070041 }
42
43 @Override
44 protected void setIdDetail(Uuid uuid) {}
45
46 @Override
47 public ModelObjectId getParentModelObjectId() {
48 return null;
49 }
50
51 public TapiCepRefHandler setCep(TapiCepRef cepRef) {
hirokid8fd7862018-10-09 15:24:24 +090052 obj.topologyUuid(cepRef.getTopologyId());
53 obj.nodeUuid(cepRef.getNodeId());
54 obj.nodeEdgePointUuid(cepRef.getNepId());
55 obj.connectionEndPointUuid(cepRef.getCepId());
hirokif4ed5212018-05-26 22:39:38 -070056 return this;
57 }
58
59 public TapiCepRefHandler setCep(ConnectionEndPoint cep) {
hirokid8fd7862018-10-09 15:24:24 +090060 obj.connectionEndPointUuid(cep.uuid());
61 ParentNodeEdgePoint parentNep = cep.parentNodeEdgePoint();
62 obj.topologyUuid(parentNep.topologyUuid());
63 obj.nodeUuid(parentNep.nodeUuid());
64 obj.nodeEdgePointUuid(parentNep.nodeEdgePointUuid());
hirokif4ed5212018-05-26 22:39:38 -070065 return this;
66 }
67}