2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
20 #ifndef _THRIFT_BUFFERED_TRANSPORT_FACTORY_H
21 #define _THRIFT_BUFFERED_TRANSPORT_FACTORY_H
23 #include <glib-object.h>
25 #include <thrift/c_glib/transport/thrift_transport.h>
26 #include <thrift/c_glib/transport/thrift_transport_factory.h>
30 /*! \file thrift_buffered_transport_factory.h
31 * \brief Wraps a transport with a ThriftBufferedTransport.
35 #define THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY \
36 (thrift_buffered_transport_factory_get_type ())
37 #define THRIFT_BUFFERED_TRANSPORT_FACTORY(obj) \
38 (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
39 THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY, \
40 ThriftBufferedTransportFactory))
41 #define THRIFT_IS_BUFFERED_TRANSPORT_FACTORY(obj) \
42 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
43 THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY))
44 #define THRIFT_BUFFERED_TRANSPORT_FACTORY_CLASS(c) \
45 (G_TYPE_CHECK_CLASS_CAST ((c), \
46 THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY, \
47 ThriftBufferedTransportFactoryClass))
48 #define THRIFT_IS_BUFFERED_TRANSPORT_FACTORY_CLASS(c) \
49 (G_TYPE_CHECK_CLASS_TYPE ((c), \
50 THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY))
51 #define THRIFT_BUFFERED_TRANSPORT_FACTORY_GET_CLASS(obj) \
52 (G_TYPE_INSTANCE_GET_CLASS ((obj), \
53 THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY, \
54 ThriftBufferedTransportFactoryClass))
56 typedef struct _ThriftBufferedTransportFactory ThriftBufferedTransportFactory
;
58 /* Thrift Buffered-Transport Factory instance */
59 struct _ThriftBufferedTransportFactory
61 ThriftTransportFactory parent
;
64 typedef struct _ThriftBufferedTransportFactoryClass ThriftBufferedTransportFactoryClass
;
66 /* Thrift Buffered-Transport Factory class */
67 struct _ThriftBufferedTransportFactoryClass
69 ThriftTransportFactoryClass parent
;
72 ThriftTransport
*(*get_transport
) (ThriftTransportFactory
*factory
,
73 ThriftTransport
*transport
);
76 /* used by THRIFT_TYPE_BUFFERED_TRANSPORT_FACTORY */
77 GType
thrift_buffered_transport_factory_get_type (void);
79 /* virtual public methods */
81 thrift_buffered_transport_factory_get_transport (ThriftTransportFactory
*factory
,
82 ThriftTransport
*transport
);
86 #endif /* _THRIFT_BUFFERED_TRANSPORT_FACTORY_H */