[ 
https://issues.apache.org/jira/browse/THRIFT-2709?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14151080#comment-14151080
 ] 

Roger Meier commented on THRIFT-2709:
-------------------------------------

[~simonsouth], could you please add hrift/c_glib/thrift_enum_types.h here?

I have this issue:
{noformat}
src/thrift/c_glib/processor/thrift_dispatch_processor.c:22:45: fatal error: 
thrift/c_glib/thrift_enum_types.h: No such file or directory
compilation terminated.
{noformat}

> 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
>
>
> 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)

Reply via email to