Github user apocolipse commented on the issue:

    https://github.com/apache/thrift/pull/1084
  
    @fumoboy007 so for clients you should be doing something like this:
    ```swift
    let factory = THTTPSessionTransport.Factory(url: serviceURL)
    let client = HermesAsyncClient(with: TBinaryProtocol.self, factory: factory)
    ```
    
    For servers, its all about the server, no need to have an async processor
    I'll need to update the Perfect HTTP Server example I have on my github for 
HTTP servers, but basically the setup is something like this (same as 
TSocketServer:
    ```swift
    let server = try? TSocketServer(port: 9090,
                                     service: MyConcreteService(), // your 
implementation of thrift service
                                     inProtocol: TBinaryProtocol.self,
                                     outProtocol: TBinaryProtocol.self,
                                     processor: MyServiceProcessor.self) // 
generated service processor
    ```
    Since it leverages generics, each request creates its own processor rather 
than re-using the same one over and over
    (If you look at the TSocketServer impl, you'll see something like
    ```swift
    let processor = Processor(service: self.serviceHandler)
    processor.process(on: inproto, outProtocol: outproto)
    ```)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to