[
https://issues.apache.org/jira/browse/THRIFT-2709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Simon South updated THRIFT-2709:
--------------------------------
Attachment: thrift-2709-3-c_glib-remove-thrift_enum_types.h-reference.patch
[~roger.meier], I've added a patch that removes that reference (to out-of-date
code on my system).
Will all three patches applied the build should now complete.
> c_glib: Support server implementation
> -------------------------------------
>
> Key: THRIFT-2709
> URL: https://issues.apache.org/jira/browse/THRIFT-2709
> Project: Thrift
> Issue Type: Improvement
> Components: C glib - Compiler, C glib - Library
> Affects Versions: 0.9.1
> Environment: Fedora 20 64-bit on x86_64
> Reporter: Simon South
> Priority: Minor
> Labels: c_glib, server
> Attachments: thrift-2709-1-c_glib-library-add-server-support.patch,
> thrift-2709-2-c_glib-compiler-generate-server-classes.patch,
> thrift-2709-3-c_glib-remove-thrift_enum_types.h-reference.patch
>
>
> The attached patches modify the C (GLib) compiler and library to add support
> for implementing servers.
> The changes to the compiler include
> * Adding server-generation methods
> ** {{generate_service_helpers}}, which generates a pair of {{ThriftStruct}}
> subclasses for each service method, used to deserialize the method's
> arguments and serialize its result
> ** {{generate_service_handler}}, which generates an abstract base class for a
> service's handler implementations
> ** {{generate_service_processor}}, which generates a service's processor class
> * Adding helper methods {{underscores_to_initial_caps}} and
> {{property_type_name}} which, respectively, convert an underscore-delimited
> name back to camel case and return the GLib type needed to store a Thrift
> type as a GObject property
> Changes to the library include
> * Changing the signature of {{ThriftProcessor.process}} so it returns I/O
> errors to its caller
> * Adding the {{ThriftDispatchProcessor}} class, ported from the C++
> implementation, which subclasses {{ThriftProcessor}} and parses an incoming
> method-call message for dispatch by subclasses
> * Adding a {{peek}} method to {{ThriftTransport}} and corresponding
> implementations in {{ThriftSocket}}, {{ThriftBufferedTransport}} and
> {{ThriftFramedTransport}}
> * Add {{ThriftBufferedTransportFactory}} and
> {{ThriftFramedTransportFactory}}, used by the server to wrap a raw
> {{ThriftTransport}} in the corresponding subtype
> * Changing the signature of {{ThriftServer.server}} so it returns an error
> status to its caller, following [GLib's
> conventions|https://developer.gnome.org/glib/2.26/glib-Error-Reporting.html#glib-Error-Reporting.description]
> * Changing {{ThriftSimpleServer.serve}} so it
> ** Detects and reports errors encountered during processing
> ** Uses transports returned by the transport factories instead of the (raw)
> transport passed in by the caller
> ** Uses {{ThriftTransport.peek}} to detect the end of input
> ** Returns an error status to its caller
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)