blob: 6c5304bfd8fec3a7b4fb56c48921b24966f49c8f [file] [log] [blame]
Author Namea594e632018-08-10 11:33:58 -04001//Copyright 2017 the original author or authors.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6
7// http://www.apache.org/licenses/LICENSE-2.0
8
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16package api;
17import "google/api/annotations.proto";
18
donNewtonAlphab3279ea2018-09-18 15:55:32 -040019message EchoMessage{
20 string Ping =1;
21}
22message EchoReplyMessage{
23 string Pong =1;
24}
25
Author Namea594e632018-08-10 11:33:58 -040026message AddChassisMessage{
27 string CLLI =1;
donNewtonAlpha57aa2ff2018-10-01 16:45:32 -040028 string XOSIP =2;
29 int32 XOSPort=3;
30 string XOSUser=4;
31 string XOSPassword=5;
32 int32 Rack=6;
33 int32 Shelf=7;
Author Namea594e632018-08-10 11:33:58 -040034}
Author Namea594e632018-08-10 11:33:58 -040035message AddChassisReturn{
36 string DeviceID = 1;
Author Namea594e632018-08-10 11:33:58 -040037}
donNewtonAlpha57aa2ff2018-10-01 16:45:32 -040038message ChangeXOSUserPasswordMessage{
39 string CLLI =1;
40 string XOSUser=2;
41 string XOSPassword=3;
42}
43message ChangeXOSUserPasswordReturn{
44 bool Success=1;
45}
46
Author Namea594e632018-08-10 11:33:58 -040047message AddOLTChassisMessage{
48 string CLLI=1;
49 string SlotIP=2;
50 fixed32 SlotPort=3;
51 string Hostname=4;
52 fixed32 NumPorts = 5;
53 bool Activate = 6;
54 enum OltDriver {
donNewtonAlpha1d2d6812018-09-14 16:00:02 -040055 openoltDriver= 0;
Author Namea594e632018-08-10 11:33:58 -040056 asfvolt16Driver=1;
57 adtranDriver=2;
58 tibitsDriver=3;
59 }
60 OltDriver Driver=7;
61 enum OltType{
62 edgecore=0;
63 adtran=1;
64 tibit=2;
65 }
66 OltType Type=8;
67
68}
69message AddOLTChassisReturn {
70 string DeviceID =1;
71 string ChassisDeviceID =2;
Author Namea594e632018-08-10 11:33:58 -040072}
donNewtonAlphaf7cc9992018-08-29 14:23:02 -040073
Author Namea594e632018-08-10 11:33:58 -040074message AddOntMessage{
donNewtonAlpha5234b132018-08-16 14:12:28 -040075 string CLLI=1;
76 int32 SlotNumber=2;
Author Namea594e632018-08-10 11:33:58 -040077 int32 PortNumber=3;
78 int32 OntNumber=4;
donNewtonAlpha4c0abcd2018-08-14 15:50:52 -040079 string SerialNumber=5;
Author Namea594e632018-08-10 11:33:58 -040080}
Don Newton281e0252018-10-22 14:38:50 -040081message AddOntFullMessage{
82 string CLLI=1;
83 int32 SlotNumber=2;
84 int32 PortNumber=3;
85 int32 OntNumber=4;
86 string SerialNumber=5;
87 uint32 STag=7;
88 uint32 CTag=8;
89 string NasPortID=9;
90 string CircuitID=10;
91}
Author Namea594e632018-08-10 11:33:58 -040092message AddOntReturn{
93 bool Success=1;
Author Namea594e632018-08-10 11:33:58 -040094}
95
donNewtonAlphaf7cc9992018-08-29 14:23:02 -040096message DeleteOntMessage{
97 string CLLI=1;
98 int32 SlotNumber=2;
99 int32 PortNumber=3;
100 int32 OntNumber=4;
101 string SerialNumber=5;
102}
103message DeleteOntReturn{
104 bool Success=1;
105}
Don Newtone973d342018-10-26 16:44:12 -0400106message ReflowMessage{
Don Newtone973d342018-10-26 16:44:12 -0400107}
108message ReflowReturn{
109 bool Success=1;
110}
donNewtonAlphae7ab5b92018-09-27 15:09:14 -0400111message OutputMessage{
112 string Something=1;
113}
114message OutputReturn{
115 bool Success=1;
116}
donNewtonAlpha27ad20c2018-10-30 16:18:42 -0400117message FullInventoryMessage{
118}
119message InventoryMessage{
120 string Clli=1;
121}
122message InventoryReturn{
123 string JsonDump=1;
124}
donNewtonAlpha5234b132018-08-16 14:12:28 -0400125service AbstractOLT{
donNewtonAlphab3279ea2018-09-18 15:55:32 -0400126 rpc Echo(EchoMessage) returns (EchoReplyMessage){
127 option(google.api.http)={
128 post:"/v1/Echo"
129 body:"*"
130 };
131 }
Author Namea594e632018-08-10 11:33:58 -0400132 rpc CreateChassis(AddChassisMessage) returns (AddChassisReturn) {
133 option(google.api.http) = {
donNewtonAlpha5234b132018-08-16 14:12:28 -0400134 post: "/v1/CreateAbstractChassis"
Author Namea594e632018-08-10 11:33:58 -0400135 body:"*"
136 };
137 }
donNewtonAlpha57aa2ff2018-10-01 16:45:32 -0400138 rpc ChangeXOSUserPassword(ChangeXOSUserPasswordMessage) returns(ChangeXOSUserPasswordReturn){
139 option(google.api.http)={
140 post:"/v1/ChangeXOSUserPassword"
141 body:"*"
142 };
143 }
Author Namea594e632018-08-10 11:33:58 -0400144 rpc CreateOLTChassis(AddOLTChassisMessage) returns (AddOLTChassisReturn) {
145 option(google.api.http) = {
donNewtonAlpha5234b132018-08-16 14:12:28 -0400146 post: "/v1/CreateOLTChassis"
Author Namea594e632018-08-10 11:33:58 -0400147 body:"*"
148 };
149 }
donNewtonAlpha5234b132018-08-16 14:12:28 -0400150 rpc ProvisionOnt(AddOntMessage) returns (AddOntReturn) {
151 option(google.api.http) = {
152 post:"/v1/ProvsionOnt"
153 body:"*"
154 };
155 }
Don Newton281e0252018-10-22 14:38:50 -0400156 rpc ProvisionOntFull(AddOntFullMessage) returns (AddOntReturn) {
157 option(google.api.http) = {
158 post:"/v1/ProvsionOtFull"
159 body:"*"
160 };
161 }
donNewtonAlphaf7cc9992018-08-29 14:23:02 -0400162 rpc DeleteOnt(DeleteOntMessage) returns (DeleteOntReturn){
163 option(google.api.http)={
164 post:"/v1/DeleteOnt"
165 body:"*"
166 };
167 }
Don Newtone973d342018-10-26 16:44:12 -0400168 rpc Reflow(ReflowMessage)returns (ReflowReturn){
169 option(google.api.http)={
170 post:"/v1/Reflow"
171 body:"*"
172
173 };
174 }
donNewtonAlphae7ab5b92018-09-27 15:09:14 -0400175 rpc Output(OutputMessage)returns(OutputReturn){
176 option(google.api.http)={
177 post:"/v1/Output"
Don Newtone973d342018-10-26 16:44:12 -0400178 body:"*"
donNewtonAlphae7ab5b92018-09-27 15:09:14 -0400179 };
180 }
donNewtonAlpha27ad20c2018-10-30 16:18:42 -0400181 rpc GetFullInventory(FullInventoryMessage)returns(InventoryReturn){
182 option(google.api.http)={
183 post:"/v1/FullInventory"
184 body:"*"
185 };
186 }
187 rpc GetInventory(InventoryMessage)returns(InventoryReturn){
188 option(google.api.http)={
189 post:"/v1/Inventory"
190 body:"*"
191 };
192 }
Author Namea594e632018-08-10 11:33:58 -0400193}
194