blob: a0e83ec22af3f05aeff675b7c611cb35cd7ee782 [file] [log] [blame]
Gaurav Agrawald9d6cc82016-03-29 02:17:23 +05301/*
Brian O'Connor5ab426f2016-04-09 01:19:45 -07002 * Copyright 2016-present Open Networking Laboratory
Gaurav Agrawald9d6cc82016-03-29 02:17:23 +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.yangutils.datamodel;
18
19/**
Bharat saraswald9822e92016-04-05 15:13:44 +053020 * Represents the derived information.
Gaurav Agrawald9d6cc82016-03-29 02:17:23 +053021 *
22 * @param <T> extended information.
23 */
24public class YangDerivedInfo<T> {
25
26 /**
27 * YANG typedef reference.
28 */
29 private YangTypeDef referredTypeDef;
30
31 /**
32 * Resolved additional information about data type after linking, example
33 * restriction info, named values, etc. The extra information is based
34 * on the data type. Based on the data type, the extended info can vary.
35 */
36 private T resolvedExtendedInfo;
37
38 /**
39 * Additional information about data type, example restriction info, named
40 * values, etc. The extra information is based on the data type. Based on
41 * the data type, the extended info can vary.
42 */
43 private T extendedInfo;
44
45 /**
46 * Returns the referred typedef reference.
47 *
48 * @return referred typedef reference
49 */
50 public YangTypeDef getReferredTypeDef() {
51 return referredTypeDef;
52 }
53
54 /**
Bharat saraswald9822e92016-04-05 15:13:44 +053055 * Sets the referred typedef reference.
Gaurav Agrawald9d6cc82016-03-29 02:17:23 +053056 *
57 * @param referredTypeDef referred typedef reference
58 */
59 public void setReferredTypeDef(YangTypeDef referredTypeDef) {
60 this.referredTypeDef = referredTypeDef;
61 }
62
63 /**
64 * Returns resolved extended information after successful linking.
65 *
66 * @return resolved extended information
67 */
68 public T getResolvedExtendedInfo() {
69 return resolvedExtendedInfo;
70 }
71
72 /**
Bharat saraswald9822e92016-04-05 15:13:44 +053073 * Sets resolved extended information after successful linking.
Gaurav Agrawald9d6cc82016-03-29 02:17:23 +053074 *
75 * @param resolvedExtendedInfo resolved extended information
76 */
77 public void setResolvedExtendedInfo(T resolvedExtendedInfo) {
78 this.resolvedExtendedInfo = resolvedExtendedInfo;
79 }
80
81 /**
82 * Returns extended information.
83 *
84 * @return extended information
85 */
86 public T getExtendedInfo() {
87 return extendedInfo;
88 }
89
90 /**
Bharat saraswald9822e92016-04-05 15:13:44 +053091 * Sets extended information.
Gaurav Agrawald9d6cc82016-03-29 02:17:23 +053092 *
93 * @param extendedInfo extended information
94 */
95 public void setExtendedInfo(T extendedInfo) {
96 this.extendedInfo = extendedInfo;
97 }
98}