blob: 3f86e3952f86b60107646caef5e91e678a0911b5 [file] [log] [blame]
Martin Cosynsf88ed6e2020-12-02 10:30:10 +01001# Copyright 2020 ADTRAN, Inc.
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
13from concurrent import futures
14import grpc
15
16import dmi.hw_events_mgmt_service_pb2
17import dmi.hw_events_mgmt_service_pb2_grpc
18import dmi.hw_management_service_pb2
19import dmi.hw_management_service_pb2_grpc
20import dmi.hw_metrics_mgmt_service_pb2
21import dmi.hw_metrics_mgmt_service_pb2_grpc
22import dmi.sw_management_service_pb2
23import dmi.sw_management_service_pb2_grpc
24import dmi.commons_pb2
25import dmi.sw_image_pb2
26
27
28class DmiEventsManagementServiceServicer(dmi.hw_events_mgmt_service_pb2_grpc.NativeEventsManagementServiceServicer):
29
30 def ListEvents(self, request, context):
31 return dmi.hw_events_mgmt_service_pb2.ListEventsResponse(status=dmi.commons_pb2.OK_STATUS)
32
33 def UpdateEventsConfiguration(self, request, context):
34 return dmi.hw_events_mgmt_service_pb2.EventsConfigurationResponse(status=dmi.commons_pb2.OK_STATUS)
35
36
37class DmiHwManagementServiceServicer(dmi.hw_management_service_pb2_grpc.NativeHWManagementServiceServicer):
38
39 def StartManagingDevice(self, request, context):
40 for _ in range(0, 1):
41 yield dmi.hw_management_service_pb2.StartManagingDeviceResponse(status=dmi.commons_pb2.OK_STATUS)
42
43 def StopManagingDevice(self, request, context):
44 return dmi.hw_management_service_pb2.StopManagingDeviceResponse(status=dmi.commons_pb2.OK_STATUS)
45
46 def GetManagedDevices(self, request, context):
47 return dmi.hw_management_service_pb2.ManagedDevicesResponse()
48
49 def GetPhysicalInventory(self, request, context):
50 for _ in range(0, 1):
51 yield dmi.hw_management_service_pb2.PhysicalInventoryResponse(status=dmi.commons_pb2.OK_STATUS)
52
53 def GetHWComponentInfo(self, request, context):
54 for _ in range(0, 1):
55 yield dmi.hw_management_service_pb2.HWComponentInfoGetResponse(status=dmi.commons_pb2.OK_STATUS)
56
57 def SetHWComponentInfo(self, request, context):
58 return dmi.hw_management_service_pb2.HWComponentInfoSetResponse(status=dmi.commons_pb2.OK_STATUS)
59
60 def SetLoggingEndpoint(self, request, context):
61 return dmi.hw_management_service_pb2.SetRemoteEndpointResponse(status=dmi.commons_pb2.OK_STATUS)
62
63 def GetLoggingEndpoint(self, request, context):
64 return dmi.hw_management_service_pb2.GetLoggingEndpointResponse(status=dmi.commons_pb2.OK_STATUS)
65
66 def SetMsgBusEndpoint(self, request, context):
67 return dmi.hw_management_service_pb2.SetRemoteEndpointResponse(status=dmi.commons_pb2.OK_STATUS)
68
69 def GetMsgBusEndpoint(self, request, context):
70 return dmi.hw_management_service_pb2.GetMsgBusEndpointResponse(status=dmi.commons_pb2.OK_STATUS)
71
72 def GetLoggableEntities(self, request, context):
73 return dmi.hw_management_service_pb2.GetLogLevelResponse(status=dmi.commons_pb2.OK_STATUS)
74
75 def SetLogLevel(self, request, context):
76 return dmi.hw_management_service_pb2.SetLogLevelResponse()
77
78 def GetLogLevel(self, request, context):
79 return dmi.hw_management_service_pb2.GetLogLevelResponse(status=dmi.commons_pb2.OK_STATUS)
80
81
82class DmiMetricsManagementServiceServicer(dmi.hw_metrics_mgmt_service_pb2_grpc.NativeMetricsManagementServiceServicer):
83
84 def ListMetrics(self, request, context):
85 return dmi.hw_metrics_mgmt_service_pb2.ListMetricsResponse(status=dmi.commons_pb2.OK_STATUS)
86
87 def UpdateMetricsConfiguration(self, request, context):
88 return dmi.hw_metrics_mgmt_service_pb2.MetricsConfigurationResponse(status=dmi.commons_pb2.OK_STATUS)
89
90 def GetMetric(self, request, context):
91 return dmi.hw_metrics_mgmt_service_pb2.GetMetricResponse(status=dmi.commons_pb2.OK_STATUS)
92
93
94class DmiSoftwareManagementServiceServicer(dmi.sw_management_service_pb2_grpc.NativeSoftwareManagementServiceServicer):
95
96 def GetSoftwareVersion(self, request, context):
97 return dmi.sw_management_service_pb2.GetSoftwareVersionInformationResponse(status=dmi.commons_pb2.OK_STATUS)
98
99 def DownloadImage(self, request, context):
100 for _ in range(0, 1):
101 yield dmi.sw_image_pb2.ImageStatus(status=dmi.commons_pb2.OK_STATUS)
102
103 def ActivateImage(self, request, context):
104 for _ in range(0, 1):
105 yield dmi.sw_image_pb2.ImageStatus(status=dmi.commons_pb2.OK_STATUS)
106
107 def RevertToStandbyImage(self, request, context):
108 for _ in range(0, 1):
109 yield dmi.sw_image_pb2.ImageStatus(status=dmi.commons_pb2.OK_STATUS)
110
111 def UpdateStartupConfiguration(self, request, context):
112 for _ in range(0, 1):
113 yield dmi.sw_management_service_pb2.ConfigResponse(status=dmi.commons_pb2.OK_STATUS)
114
115
116def serve():
117 server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
118
119 dmi.hw_events_mgmt_service_pb2_grpc.add_NativeEventsManagementServiceServicer_to_server(DmiEventsManagementServiceServicer(), server)
120 dmi.hw_management_service_pb2_grpc.add_NativeHWManagementServiceServicer_to_server(DmiHwManagementServiceServicer(), server)
121 dmi.hw_metrics_mgmt_service_pb2_grpc.add_NativeMetricsManagementServiceServicer_to_server(DmiMetricsManagementServiceServicer(), server)
122 dmi.sw_management_service_pb2_grpc.add_NativeSoftwareManagementServiceServicer_to_server(DmiSoftwareManagementServiceServicer(), server)
123
124 server.add_insecure_port('127.0.01:50051')
125 server.start()
126 server.wait_for_termination()
127
128
129if __name__ == '__main__':
130 serve()