// Generated GRPC code for FlatBuffers swift! /// The following code is generated by the Flatbuffers library which might not be in sync with grpc-swift /// in case of an issue please open github issue, though it would be maintained // swiftlint:disable all // swiftformat:disable all import Foundation import GRPC import NIO import NIOHTTP1 import FlatBuffers public protocol GRPCFlatBufPayload: GRPCPayload, FlatBufferGRPCMessage {} public extension GRPCFlatBufPayload { init(serializedByteBuffer: inout NIO.ByteBuffer) throws { self.init(byteBuffer: FlatBuffers.ByteBuffer(contiguousBytes: serializedByteBuffer.readableBytesView, count: serializedByteBuffer.readableBytes)) } func serialize(into buffer: inout NIO.ByteBuffer) throws { let buf = UnsafeRawBufferPointer(start: self.rawPointer, count: Int(self.size)) buffer.writeBytes(buf) } } extension Message: GRPCFlatBufPayload {} /// Usage: instantiate MyGame_Example_MonsterStorageServiceClient, then call methods of this protocol to make API calls. public protocol MyGame_Example_MonsterStorageClientProtocol: GRPCClient { var serviceName: String { get } var interceptors: MyGame_Example_MonsterStorageClientInterceptorFactoryProtocol? { get } func Store( _ request: Message , callOptions: CallOptions? ) -> UnaryCall, Message> func Retrieve( _ request: Message , callOptions: CallOptions?, handler: @escaping (Message) -> Void ) -> ServerStreamingCall, Message> func GetMaxHitPoint( callOptions: CallOptions? ) -> ClientStreamingCall, Message> func GetMinMaxHitPoints( callOptions: CallOptions?, handler: @escaping (Message ) -> Void ) -> BidirectionalStreamingCall, Message> } extension MyGame_Example_MonsterStorageClientProtocol { public var serviceName: String { "MyGame.Example.MonsterStorage" } public func Store( _ request: Message , callOptions: CallOptions? = nil ) -> UnaryCall, Message> { return self.makeUnaryCall( path: "/MyGame.Example.MonsterStorage/Store", request: request, callOptions: callOptions ?? self.defaultCallOptions, interceptors: self.interceptors?.makeStoreInterceptors() ?? [] ) } public func Retrieve( _ request: Message , callOptions: CallOptions? = nil, handler: @escaping (Message) -> Void ) -> ServerStreamingCall, Message> { return self.makeServerStreamingCall( path: "/MyGame.Example.MonsterStorage/Retrieve", request: request, callOptions: callOptions ?? self.defaultCallOptions, interceptors: self.interceptors?.makeRetrieveInterceptors() ?? [], handler: handler ) } public func GetMaxHitPoint( callOptions: CallOptions? = nil ) -> ClientStreamingCall, Message> { return self.makeClientStreamingCall( path: "/MyGame.Example.MonsterStorage/GetMaxHitPoint", callOptions: callOptions ?? self.defaultCallOptions, interceptors: self.interceptors?.makeGetMaxHitPointInterceptors() ?? [] ) } public func GetMinMaxHitPoints( callOptions: CallOptions? = nil, handler: @escaping (Message ) -> Void ) -> BidirectionalStreamingCall, Message> { return self.makeBidirectionalStreamingCall( path: "/MyGame.Example.MonsterStorage/GetMinMaxHitPoints", callOptions: callOptions ?? self.defaultCallOptions, interceptors: self.interceptors?.makeGetMinMaxHitPointsInterceptors() ?? [], handler: handler ) } } public protocol MyGame_Example_MonsterStorageClientInterceptorFactoryProtocol { /// - Returns: Interceptors to use when invoking 'Store'. func makeStoreInterceptors() -> [ClientInterceptor, Message>] /// - Returns: Interceptors to use when invoking 'Retrieve'. func makeRetrieveInterceptors() -> [ClientInterceptor, Message>] /// - Returns: Interceptors to use when invoking 'GetMaxHitPoint'. func makeGetMaxHitPointInterceptors() -> [ClientInterceptor, Message>] /// - Returns: Interceptors to use when invoking 'GetMinMaxHitPoints'. func makeGetMinMaxHitPointsInterceptors() -> [ClientInterceptor, Message>] } public final class MyGame_Example_MonsterStorageServiceClient: MyGame_Example_MonsterStorageClientProtocol { public let channel: GRPCChannel public var defaultCallOptions: CallOptions public var interceptors: MyGame_Example_MonsterStorageClientInterceptorFactoryProtocol? public init( channel: GRPCChannel, defaultCallOptions: CallOptions = CallOptions(), interceptors: MyGame_Example_MonsterStorageClientInterceptorFactoryProtocol? = nil ) { self.channel = channel self.defaultCallOptions = defaultCallOptions self.interceptors = interceptors } } public protocol MyGame_Example_MonsterStorageProvider: CallHandlerProvider { var interceptors: MyGame_Example_MonsterStorageServerInterceptorFactoryProtocol? { get } func Store(request: Message, context: StatusOnlyCallContext) -> EventLoopFuture> func Retrieve(request: Message, context: StreamingResponseCallContext>) -> EventLoopFuture func GetMaxHitPoint(context: UnaryResponseCallContext>) -> EventLoopFuture<(StreamEvent>) -> Void> func GetMinMaxHitPoints(context: StreamingResponseCallContext>) -> EventLoopFuture<(StreamEvent>) -> Void> } public extension MyGame_Example_MonsterStorageProvider { var serviceName: Substring { return "MyGame.Example.MonsterStorage" } func handle(method name: Substring, context: CallHandlerContext) -> GRPCServerHandlerProtocol? { switch name { case "Store": return UnaryServerHandler( context: context, requestDeserializer: GRPCPayloadDeserializer>(), responseSerializer: GRPCPayloadSerializer>(), interceptors: self.interceptors?.makeStoreInterceptors() ?? [], userFunction: self.Store(request:context:)) case "Retrieve": return ServerStreamingServerHandler( context: context, requestDeserializer: GRPCPayloadDeserializer>(), responseSerializer: GRPCPayloadSerializer>(), interceptors: self.interceptors?.makeRetrieveInterceptors() ?? [], userFunction: self.Retrieve(request:context:)) case "GetMaxHitPoint": return ClientStreamingServerHandler( context: context, requestDeserializer: GRPCPayloadDeserializer>(), responseSerializer: GRPCPayloadSerializer>(), interceptors: self.interceptors?.makeGetMaxHitPointInterceptors() ?? [], observerFactory: self.GetMaxHitPoint(context:)) case "GetMinMaxHitPoints": return BidirectionalStreamingServerHandler( context: context, requestDeserializer: GRPCPayloadDeserializer>(), responseSerializer: GRPCPayloadSerializer>(), interceptors: self.interceptors?.makeGetMinMaxHitPointsInterceptors() ?? [], observerFactory: self.GetMinMaxHitPoints(context:)) default: return nil; } } } public protocol MyGame_Example_MonsterStorageServerInterceptorFactoryProtocol { /// - Returns: Interceptors to use when handling 'Store'. /// Defaults to calling `self.makeInterceptors()`. func makeStoreInterceptors() -> [ServerInterceptor, Message>] /// - Returns: Interceptors to use when handling 'Retrieve'. /// Defaults to calling `self.makeInterceptors()`. func makeRetrieveInterceptors() -> [ServerInterceptor, Message>] /// - Returns: Interceptors to use when handling 'GetMaxHitPoint'. /// Defaults to calling `self.makeInterceptors()`. func makeGetMaxHitPointInterceptors() -> [ServerInterceptor, Message>] /// - Returns: Interceptors to use when handling 'GetMinMaxHitPoints'. /// Defaults to calling `self.makeInterceptors()`. func makeGetMinMaxHitPointsInterceptors() -> [ServerInterceptor, Message>] }