[
https://issues.apache.org/jira/browse/AVRO-539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13042654#comment-13042654
]
Doug Cutting commented on AVRO-539:
-----------------------------------
This is great stuff! A few comments on the patch:
- Rather than calling the new APIs 'asynchronous' might we instead consider
them 'Callback-based' and/or 'Future-based'? They'd be friendly to async
implementations, but a synchronous implementation would be permitted. In
particular, I think we can remove 'asynchronous' from the names of these
methods.
- Do we really need both Callback-based and Future-based APIs?
- The name of the generated interface and methods should avoid potential
collisions with user-defined interfaces and messages, perhaps by using '$'.
Alternately, we might just generate a single interface and not use different
method names, rather distinguishing by method signature. No user method should
accept a org.apache.avro.ipc.Callback parameter, so we would not need to worry
about method signature collisions.
- Should we make generation of Callback/Future-based interfaces optional?
- in Transceiver, can we implement the Callback/Future-based API synchronously
in terms of the existing API, rather than throwing an exception?
- in Requestor, can we implement the synchronous version in terms of the
Callback-based API so that less logic is replicated?
> Allow asynchronous clients to specify a callback to be run when server
> processing completes
> -------------------------------------------------------------------------------------------
>
> Key: AVRO-539
> URL: https://issues.apache.org/jira/browse/AVRO-539
> Project: Avro
> Issue Type: New Feature
> Reporter: Jeff Hammerbacher
> Attachments: AVRO-539.patch
>
>
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira