blob: 30d7e09ee3a5677bcde57a11b67d17cf757cd5a8 [file] [log] [blame]
hirokid8fd7862018-10-09 15:24:24 +09001/*
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
19import org.onosproject.yang.gen.v1.tapicommon.rev20181016.tapicommon.DefaultContext;
20import org.onosproject.yang.gen.v1.tapicommon.rev20181016.tapicommon.Uuid;
21import org.onosproject.yang.gen.v1.tapitopology.rev20181016.tapitopology.context.DefaultAugmentedTapiCommonContext;
22import org.onosproject.yang.gen.v1.tapitopology.rev20181016.tapitopology.context.augmentedtapicommoncontext.DefaultTopologyContext;
23import org.onosproject.yang.model.ModelObjectId;
24
25/**
26 * Utility class to deal with TAPI Augmented Topology Context with DCS.
27 */
28public final class TapiTopologyContextHandler extends TapiObjectHandler<DefaultTopologyContext> {
29
30 private TapiTopologyContextHandler() {
31 obj = new DefaultTopologyContext();
32 }
33
34 public static TapiTopologyContextHandler create() {
35 return new TapiTopologyContextHandler();
36 }
37
38 @Override
39 protected Uuid getIdDetail() {
40 // The target yang object of this class is container, so no need to handle Id.
41 return null;
42 }
43
44 @Override
45 protected void setIdDetail(Uuid uuid) {
46 // The target yang object of this class is container, so no need to handle Id.
47 }
48
49 @Override
50 public ModelObjectId getParentModelObjectId() {
51 DefaultAugmentedTapiCommonContext context = new DefaultAugmentedTapiCommonContext();
52 context.topologyContext(obj);
53
54 return ModelObjectId.builder()
55 .addChild(DefaultContext.class).build();
56 }
57}