[
https://issues.apache.org/jira/browse/THRIFT-819?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12898393#action_12898393
]
Mark Slee commented on THRIFT-819:
----------------------------------
I tend to agree with David here. One of the main ideas in Thrift is that the
transports/protocols are just interfaces, and there may be any number of
implementations of them, people can write whatever types they want, etc.
Rather than statically defining the available types as constants, maybe there'd
be some value in having something like a TProtocolRegistry or
TTransportRegistry. When a protocol or transport is defined/declared, it could
statically register itself with one of these Registries with some kind of
unique identifier.
This would enable iteration over the available types, or symbolic access to a
type (via whatever unique key it uses, probably just strings?)
> add Enumeration for protocol, transport and server types
> --------------------------------------------------------
>
> Key: THRIFT-819
> URL: https://issues.apache.org/jira/browse/THRIFT-819
> Project: Thrift
> Issue Type: Improvement
> Components: Library (C++)
> Reporter: Roger Meier
> Priority: Minor
> Attachments: THRIFT-819.patch
>
> Original Estimate: 0.5h
> Remaining Estimate: 0.5h
>
> I would like to have Enumeration's for protocol, transport and server types.
> I'm doing some testing stuff, and using types for the different parameter's
> would make it much more comfortable to work with, e.g.
> {code}
> // Dispatcher
> shared_ptr<TProtocolFactory> protocolFactory;
> if (protocol_type == PROTOCOL_JSON) {
> shared_ptr<TProtocolFactory> jsonProtocolFactory(new
> TJSONProtocolFactory());
> protocolFactory = jsonProtocolFactory;
> } else
> {
> shared_ptr<TProtocolFactory> binaryProtocolFactory(new
> TBinaryProtocolFactory());
> protocolFactory = binaryProtocolFactory;
> }
> {code}
> aligning these enums across all languages might be another benefit.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.