1# Copyright 2017 gRPC 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
15
16cdef class ConnectivityEvent:
17
18  def __cinit__(
19      self, grpc_completion_type completion_type, bint success, object tag):
20    self.completion_type = completion_type
21    self.success = success
22    self.tag = tag
23
24
25cdef class RequestCallEvent:
26
27  def __cinit__(
28      self, grpc_completion_type completion_type, bint success, object tag,
29      Call call, CallDetails call_details, tuple invocation_metadata):
30    self.completion_type = completion_type
31    self.success = success
32    self.tag = tag
33    self.call = call
34    self.call_details = call_details
35    self.invocation_metadata = invocation_metadata
36
37
38cdef class BatchOperationEvent:
39
40  def __cinit__(
41      self, grpc_completion_type completion_type, bint success, object tag,
42      object batch_operations):
43    self.completion_type = completion_type
44    self.success = success
45    self.tag = tag
46    self.batch_operations = batch_operations
47
48
49cdef class ServerShutdownEvent:
50
51  def __cinit__(
52      self, grpc_completion_type completion_type, bint success, object tag):
53    self.completion_type = completion_type
54    self.success = success
55    self.tag = tag
56