1. Updated pom.xml for renderer and impl to replace mockito-all with mockito-core
[transportpce.git] / ordmodels / src / main / yang / org-openroadm-port-types.yang
1 module org-openroadm-port-types {
2   namespace "http://org/openroadm/port/types";
3   prefix org-openroadm-port-types;
4
5   import org-openroadm-common-types {
6     prefix org-openroadm-common-types;
7   }
8
9   organization "Open ROADM MSA";
10   contact
11     "OpenROADM.org";
12   description
13     "YANG definitions for port types.
14      
15      Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016, 
16      AT&T Intellectual Property.  All other rights reserved.
17      
18      Redistribution and use in source and binary forms, with or without modification, 
19      are permitted provided that the following conditions are met:
20      
21      * Redistributions of source code must retain the above copyright notice, this 
22        list of conditions and the following disclaimer.
23      * Redistributions in binary form must reproduce the above copyright notice, 
24        this list of conditions and the following disclaimer in the documentation and/or 
25        other materials provided with the distribution.
26      * Neither the Members of the Open ROADM MSA Agreement nor the names of its 
27        contributors may be used to endorse or promote products derived from this software 
28        without specific prior written permission.
29      
30      THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS'' 
31      AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
32      WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
33      IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT, 
34      INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
35      NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA, 
36      OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
37      WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
38      ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
39      POSSIBILITY OF SUCH DAMAGE.";
40
41   revision 2016-10-14 {
42     description
43       "Version 1.2";
44   }
45
46   identity supported-if-capability {
47     description
48       "Base identity from which specific supported interfaces are derived";
49   }
50
51   identity if-100GE {
52     base supported-if-capability;
53   }
54
55   identity if-OMS {
56     base supported-if-capability;
57   }
58
59   identity if-OTS {
60     base supported-if-capability;
61   }
62
63   identity if-OCH {
64     base supported-if-capability;
65   }
66
67   identity supported-xpdr-capability {
68     description
69       "Base identity from which specific supported xponder are derived";
70   }
71
72   identity Transponder {
73     base supported-xpdr-capability;
74   }
75
76   identity Regen {
77     base supported-xpdr-capability;
78   }
79
80   typedef port-wavelength-types {
81     type enumeration {
82       enum "wavelength" {
83         value 1;
84         description
85           "Port on a transponder.";
86       }
87       enum "multi-wavelegnth" {
88         value 2;
89         description
90           "Port on a ROADM.";
91       }
92     }
93     description
94       "Port types.";
95   }
96
97   grouping common-port {
98     leaf port-power-capability-min-rx {
99       type org-openroadm-common-types:power-dBm;
100       config false;
101       description
102         "Based on port capabilities, the minimum power in the system spec for this port to
103          provide optimum function in rx direction";
104     }
105     leaf port-power-capability-min-tx {
106       type org-openroadm-common-types:power-dBm;
107       config false;
108       description
109         "Based on port capabilities, the minimum power in the system spec for this port to
110          provide optimum function in tx direction.";
111     }         
112     leaf port-power-capability-max-rx {
113       type org-openroadm-common-types:power-dBm;
114       config false;
115       description
116         "Based on port capabilities, the maximum power in the system spec for this port to
117          provide optimum function in rx direction.";
118     }
119     leaf port-power-capability-max-tx {
120       type org-openroadm-common-types:power-dBm;
121       config false;
122       description
123         "Based on port capabilities, the maximum power in the system spec for this port to
124          provide optimum function in tx direction.";
125     }                                             
126     leaf-list capable-wavelengths {
127       type uint32;
128       config false;
129       description
130         "List of wavelengths this port is capable of supporting.
131          can be used to access wavelength-map to get the wavelength value in nm";
132     }
133   }
134   grouping roadm-port {
135     uses common-port;
136     leaf-list available-wavelengths {
137       type uint32;
138       config false;
139       description
140         "List of available (capable and unused) wavelengths on this port. 
141          can be used to access wavelength-map to get the wavelength value in nm";
142     }
143     leaf-list used-wavelengths {
144       type uint32;
145       config false;
146       description
147         "List of used available wavelength-numbers on this port.";
148     }
149   }
150 }