...
1// Generated GRPC code for FlatBuffers swift!
2/// The following code is generated by the Flatbuffers library which might not be in sync with grpc-swift
3/// in case of an issue please open github issue, though it would be maintained
4
5// swiftlint:disable all
6// swiftformat:disable all
7
8import Foundation
9import GRPC
10import NIO
11import NIOHTTP1
12import FlatBuffers
13
14public protocol GRPCFlatBufPayload: GRPCPayload, FlatBufferGRPCMessage {}
15public extension GRPCFlatBufPayload {
16 init(serializedByteBuffer: inout NIO.ByteBuffer) throws {
17 self.init(byteBuffer: FlatBuffers.ByteBuffer(contiguousBytes: serializedByteBuffer.readableBytesView, count: serializedByteBuffer.readableBytes))
18 }
19 func serialize(into buffer: inout NIO.ByteBuffer) throws {
20 let buf = UnsafeRawBufferPointer(start: self.rawPointer, count: Int(self.size))
21 buffer.writeBytes(buf)
22 }
23}
24extension Message: GRPCFlatBufPayload {}
25
26/// Usage: instantiate models_GreeterServiceClient, then call methods of this protocol to make API calls.
27public protocol models_GreeterClientProtocol: GRPCClient {
28
29 var serviceName: String { get }
30
31 var interceptors: models_GreeterClientInterceptorFactoryProtocol? { get }
32
33 func SayHello(
34 _ request: Message<models_HelloRequest>
35 , callOptions: CallOptions?
36 ) -> UnaryCall<Message<models_HelloRequest>, Message<models_HelloReply>>
37
38 func SayManyHellos(
39 _ request: Message<models_HelloRequest>
40 , callOptions: CallOptions?,
41 handler: @escaping (Message<models_HelloReply>) -> Void
42 ) -> ServerStreamingCall<Message<models_HelloRequest>, Message<models_HelloReply>>
43
44}
45
46extension models_GreeterClientProtocol {
47
48 public var serviceName: String { "models.Greeter" }
49
50 public func SayHello(
51 _ request: Message<models_HelloRequest>
52 , callOptions: CallOptions? = nil
53 ) -> UnaryCall<Message<models_HelloRequest>, Message<models_HelloReply>> {
54 return self.makeUnaryCall(
55 path: "/models.Greeter/SayHello",
56 request: request,
57 callOptions: callOptions ?? self.defaultCallOptions,
58 interceptors: self.interceptors?.makeSayHelloInterceptors() ?? []
59 )
60 }
61
62 public func SayManyHellos(
63 _ request: Message<models_HelloRequest>
64 , callOptions: CallOptions? = nil,
65 handler: @escaping (Message<models_HelloReply>) -> Void
66 ) -> ServerStreamingCall<Message<models_HelloRequest>, Message<models_HelloReply>> {
67 return self.makeServerStreamingCall(
68 path: "/models.Greeter/SayManyHellos",
69 request: request,
70 callOptions: callOptions ?? self.defaultCallOptions,
71 interceptors: self.interceptors?.makeSayManyHellosInterceptors() ?? [],
72 handler: handler
73 )
74 }
75}
76
77public protocol models_GreeterClientInterceptorFactoryProtocol {
78 /// - Returns: Interceptors to use when invoking 'SayHello'.
79 func makeSayHelloInterceptors() -> [ClientInterceptor<Message<models_HelloRequest>, Message<models_HelloReply>>]
80
81 /// - Returns: Interceptors to use when invoking 'SayManyHellos'.
82 func makeSayManyHellosInterceptors() -> [ClientInterceptor<Message<models_HelloRequest>, Message<models_HelloReply>>]
83
84}
85
86public final class models_GreeterServiceClient: models_GreeterClientProtocol {
87 public let channel: GRPCChannel
88 public var defaultCallOptions: CallOptions
89 public var interceptors: models_GreeterClientInterceptorFactoryProtocol?
90
91 public init(
92 channel: GRPCChannel,
93 defaultCallOptions: CallOptions = CallOptions(),
94 interceptors: models_GreeterClientInterceptorFactoryProtocol? = nil
95 ) {
96 self.channel = channel
97 self.defaultCallOptions = defaultCallOptions
98 self.interceptors = interceptors
99 }
100}
101
102public protocol models_GreeterProvider: CallHandlerProvider {
103 var interceptors: models_GreeterServerInterceptorFactoryProtocol? { get }
104 func SayHello(request: Message<models_HelloRequest>, context: StatusOnlyCallContext) -> EventLoopFuture<Message<models_HelloReply>>
105 func SayManyHellos(request: Message<models_HelloRequest>, context: StreamingResponseCallContext<Message<models_HelloReply>>) -> EventLoopFuture<GRPCStatus>
106}
107
108public extension models_GreeterProvider {
109
110 var serviceName: Substring { return "models.Greeter" }
111
112 func handle(method name: Substring, context: CallHandlerContext) -> GRPCServerHandlerProtocol? {
113 switch name {
114 case "SayHello":
115 return UnaryServerHandler(
116 context: context,
117 requestDeserializer: GRPCPayloadDeserializer<Message<models_HelloRequest>>(),
118 responseSerializer: GRPCPayloadSerializer<Message<models_HelloReply>>(),
119 interceptors: self.interceptors?.makeSayHelloInterceptors() ?? [],
120 userFunction: self.SayHello(request:context:))
121
122 case "SayManyHellos":
123 return ServerStreamingServerHandler(
124 context: context,
125 requestDeserializer: GRPCPayloadDeserializer<Message<models_HelloRequest>>(),
126 responseSerializer: GRPCPayloadSerializer<Message<models_HelloReply>>(),
127 interceptors: self.interceptors?.makeSayManyHellosInterceptors() ?? [],
128 userFunction: self.SayManyHellos(request:context:))
129
130 default: return nil;
131 }
132 }
133
134}
135
136public protocol models_GreeterServerInterceptorFactoryProtocol {
137 /// - Returns: Interceptors to use when handling 'SayHello'.
138 /// Defaults to calling `self.makeInterceptors()`.
139 func makeSayHelloInterceptors() -> [ServerInterceptor<Message<models_HelloRequest>, Message<models_HelloReply>>]
140
141 /// - Returns: Interceptors to use when handling 'SayManyHellos'.
142 /// Defaults to calling `self.makeInterceptors()`.
143 func makeSayManyHellosInterceptors() -> [ServerInterceptor<Message<models_HelloRequest>, Message<models_HelloReply>>]
144
145}
View as plain text