Skip to content

Commit 9fb34a6

Browse files
authored
Cleanup (#8)
* save work * add p * remove obsolete file * clean imports
1 parent be04167 commit 9fb34a6

19 files changed

+123
-82
lines changed

.gitignore

-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ ltmain.sh
2727
missing
2828
mkinstalldirs
2929
modules
30-
package.xml
3130
kafka-*.tgz
3231
run-tests.php
3332
tests/*/*.diff

configuration.c

-3
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,8 @@
55
#include "php.h"
66
#include "php_ini.h"
77
#include "ext/standard/info.h"
8-
#include "php_kafka.h"
98
#include "php_kafka_int.h"
10-
#include "librdkafka/rdkafka.h"
119
#include "Zend/zend_exceptions.h"
12-
#include "ext/spl/spl_exceptions.h"
1310
#include "configuration_arginfo.h"
1411

1512
zend_class_entry * ce_kafka_conf;

configuration.h

-8
This file was deleted.

consumer.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "Zend/zend_exceptions.h"
108
#include "consumer_arginfo.h"
119

functions.c

-3
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,8 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "Zend/zend_exceptions.h"
10-
#include "ext/spl/spl_exceptions.h"
118
#include "functions_arginfo.h"
129

1310
/* {{{ proto array kafka_get_err_descs()

kafka.c

-3
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,8 @@
77
#include "php.h"
88
#include "php_ini.h"
99
#include "ext/standard/info.h"
10-
#include "librdkafka/rdkafka.h"
11-
#include "php_kafka.h"
1210
#include "php_kafka_int.h"
1311
#include "Zend/zend_exceptions.h"
14-
#include "ext/spl/spl_exceptions.h"
1512
#include "functions_arginfo.h"
1613
#include "producer_arginfo.h"
1714
#include "kafka_arginfo.h"

kafka_exception.c

-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
87
#include "Zend/zend_interfaces.h"
98
#include "Zend/zend_exceptions.h"

message.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "ext/spl/spl_iterators.h"
108
#include "Zend/zend_interfaces.h"
119
#include "Zend/zend_exceptions.h"

metadata.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "Zend/zend_exceptions.h"
108
#include "metadata_arginfo.h"
119

metadata_broker.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "ext/spl/spl_iterators.h"
108
#include "Zend/zend_interfaces.h"
119
#include "Zend/zend_exceptions.h"

metadata_collection.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "ext/spl/spl_iterators.h"
108
#include "Zend/zend_interfaces.h"
119
#include "metadata_collection_arginfo.h"

metadata_partition.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "ext/spl/spl_iterators.h"
108
#include "Zend/zend_interfaces.h"
119
#include "Zend/zend_exceptions.h"

metadata_topic.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "ext/spl/spl_iterators.h"
108
#include "Zend/zend_interfaces.h"
119
#include "Zend/zend_exceptions.h"

package.xml

+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<package version="2.1" xmlns="http://pear.php.net/dtd/package-2.1" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.1 http://pear.php.net/dtd/package-2.1.xsd">
3+
<name>kafka</name>
4+
<channel>pecl.php.net</channel>
5+
<summary>Kafka client based on librdkafka</summary>
6+
<description>This extension is a librdkafka binding providing a working client for Kafka</description>
7+
<lead>
8+
<name>Nick Chiu</name>
9+
<user>nick-zh</user>
10+
<email>[email protected]</email>
11+
<active>yes</active>
12+
</lead>
13+
<date>2020-12-06</date>
14+
<time>12:00:00</time>
15+
<version>
16+
<release>1.0.0</release>
17+
<api>1.0.0</api>
18+
</version>
19+
<stability>
20+
<release>stable</release>
21+
<api>stable</api>
22+
</stability>
23+
<license uri="https://opensource.org/licenses/BSD-3-Clause">BSD-3 License</license>
24+
<notes>
25+
Initial release
26+
</notes>
27+
<contents>
28+
<dir name="/">
29+
<file role="doc" name="CREDITS"/>
30+
<file role="doc" name="LICENSE"/>
31+
<file role="doc" name="README.md"/>
32+
<file role="src" name="configuration.c"/>
33+
<file role="src" name="config.m4"/>
34+
<file role="src" name="config.w32"/>
35+
<file role="src" name="functions.c"/>
36+
<file role="src" name="functions_arginfo.h"/>
37+
<file role="src" name="consumer.c"/>
38+
<file role="src" name="consumer_arginfo.h"/>
39+
<file role="src" name="kafka_exception.c"/>
40+
<file role="src" name="message.c"/>
41+
<file role="src" name="message_arginfo.h"/>
42+
<file role="src" name="metadata.c"/>
43+
<file role="src" name="metadata_arginfo.h"/>
44+
<file role="src" name="metadata_broker.c"/>
45+
<file role="src" name="metadata_broker_arginfo.h"/>
46+
<file role="src" name="metadata_collection.c"/>
47+
<file role="src" name="metadata_collection_arginfo.h"/>
48+
<file role="src" name="metadata_partition.c"/>
49+
<file role="src" name="metadata_partition_arginfo.h"/>
50+
<file role="src" name="metadata_topic.c"/>
51+
<file role="src" name="metadata_topic_arginfo.h"/>
52+
<file role="src" name="php_kafka_int.h"/>
53+
<file role="src" name="producer.c"/>
54+
<file role="src" name="producer_arginfo.h"/>
55+
<file role="src" name="kafka.c"/>
56+
<file role="src" name="topic.c"/>
57+
<file role="src" name="topic_arginfo.h"/>
58+
<file role="src" name="topic_partition.c"/>
59+
<file role="src" name="topic_partition_arginfo.h"/>
60+
<dir name="tests">
61+
<file role="test" name="allow_null_payload_and_key.phpt"/>
62+
<file role="test" name="allow_null_payload.phpt"/>
63+
<file role="test" name="bugConfSetArgument.phpt"/>
64+
<file role="test" name="conf_callbacks_integration.phpt"/>
65+
<file role="test" name="conf_callbacks.phpt"/>
66+
<file role="test" name="conf.phpt"/>
67+
<file role="test" name="constants.phpt"/>
68+
<file role="test" name="integration-tests-check.php"/>
69+
<file role="test" name="message_headers.phpt"/>
70+
<file role="test" name="produce_consume.phpt"/>
71+
<file role="test" name="produce_consume_queue.phpt"/>
72+
<file role="test" name="kafka_get_err_descs.phpt"/>
73+
<file role="test" name="test_env.php.sample"/>
74+
<file role="test" name="topic_partition.phpt"/>
75+
</dir>
76+
</dir>
77+
</contents>
78+
<dependencies>
79+
<required>
80+
<php>
81+
<min>7.3.0</min>
82+
<max>8.99.99</max>
83+
</php>
84+
<pearinstaller>
85+
<min>1.4.8</min>
86+
</pearinstaller>
87+
</required>
88+
</dependencies>
89+
<providesextension>kafka</providesextension>
90+
<extsrcrelease/>
91+
<changelog>
92+
</changelog>
93+
</package>

php_kafka.h

-42
This file was deleted.

php_kafka_int.h

+30
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#ifndef PHP_KAFKA_INT_H
22
#define PHP_KAFKA_INT_H
33

4+
#include "librdkafka/rdkafka.h"
5+
46
typedef struct _kafka_topic_object {
57
rd_kafka_topic_t *rkt;
68
zval zrk;
@@ -36,6 +38,16 @@ typedef struct _kafka_topic_partition_intern {
3638
zend_object std;
3739
} kafka_topic_partition_intern;
3840

41+
typedef struct _kafka_object {
42+
rd_kafka_type_t type;
43+
rd_kafka_t *rk;
44+
kafka_conf_callbacks cbs;
45+
HashTable consuming;
46+
HashTable topics;
47+
HashTable queues;
48+
zend_object std;
49+
} kafka_object;
50+
3951
typedef void (*kafka_metadata_collection_ctor_t)(zval *renurn_value, zval *zmetadata, const void *object);
4052

4153

@@ -59,6 +71,14 @@ typedef void (*kafka_metadata_collection_ctor_t)(zval *renurn_value, zval *zmeta
5971

6072
#endif
6173

74+
#ifdef PHP_WIN32
75+
# define PHP_KAFKA_API __declspec(dllexport)
76+
#elif defined(__GNUC__) && __GNUC__ >= 4
77+
# define PHP_KAFKA_API __attribute__ ((visibility("default")))
78+
#else
79+
# define PHP_KAFKA_API
80+
#endif
81+
6282
extern zend_class_entry * ce_kafka_conf;
6383
extern zend_class_entry * ce_kafka_error_exception;
6484
extern zend_class_entry * ce_kafka_exception;
@@ -68,12 +88,19 @@ extern zend_class_entry * ce_kafka_consumer_topic;
6888
extern zend_class_entry * ce_kafka_producer_topic;
6989
extern zend_class_entry * ce_kafka_topic;
7090
extern zend_class_entry * ce_kafka_topic_partition;
91+
extern zend_module_entry kafka_module_entry;
92+
extern zend_object_handlers kafka_default_object_handlers;
7193

7294
#define Z_KAFKA_P(php_kafka_type, zobject) php_kafka_from_obj(php_kafka_type, Z_OBJ_P(zobject))
7395

7496
#define php_kafka_from_obj(php_kafka_type, object) \
7597
((php_kafka_type*)((char *)(object) - XtOffsetOf(php_kafka_type, std)))
7698

99+
#define phpext_kafka_ptr &kafka_module_entry
100+
101+
#define PHP_KAFKA_VERSION "1.0.0"
102+
103+
77104
static inline void kafka_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache, zval *retval, uint32_t param_count, zval params[])
78105
{
79106
int local_retval;
@@ -144,5 +171,8 @@ kafka_topic_partition_intern * get_topic_partition_object(zval *z);
144171
rd_kafka_topic_partition_list_t * array_arg_to_kafka_topic_partition_list(int argnum, HashTable *ary);
145172
kafka_topic_object * get_kafka_topic_object(zval *zrkt);
146173
kafka_conf_object * get_kafka_conf_object(zval *zconf);
174+
kafka_object * get_kafka_object(zval *zrk);
175+
176+
ZEND_METHOD(Kafka, __construct);
147177

148178
#endif /* PHP_KAFKA_INT_H */

producer.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
7-
#include "librdkafka/rdkafka.h"
86
#include "php_kafka_int.h"
97
#include "Zend/zend_exceptions.h"
108
#include "producer_arginfo.h"

topic.c

-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
#endif
44

55
#include "php.h"
6-
#include "php_kafka.h"
76
#include "php_kafka_int.h"
8-
#include "librdkafka/rdkafka.h"
97
#include "ext/spl/spl_iterators.h"
108
#include "Zend/zend_interfaces.h"
119
#include "Zend/zend_exceptions.h"

topic_partition.c

-3
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,8 @@
55
#include "php.h"
66
#include "php_ini.h"
77
#include "ext/standard/info.h"
8-
#include "php_kafka.h"
98
#include "php_kafka_int.h"
10-
#include "librdkafka/rdkafka.h"
119
#include "Zend/zend_exceptions.h"
12-
#include "ext/spl/spl_exceptions.h"
1310
#include "topic_partition_arginfo.h"
1411

1512
typedef kafka_topic_partition_intern object_intern;

0 commit comments

Comments
 (0)