├── .gitignore ├── .gitmodules ├── .travis.yml ├── Makefile.frag ├── README.md ├── config.m4 ├── config.w32 ├── proto ├── BaseException.php ├── InvalidCallException.php ├── InvalidConfigException.php ├── InvalidParamException.php ├── InvalidPropertyException.php ├── Object.php ├── Reactor.php ├── Timer.php ├── UnknownPropertyException.php ├── Watcher.php ├── defer │ ├── Deferred.php │ ├── FulfilledPromise.php │ ├── Promise.php │ ├── PromiseInterface.php │ └── RejectedPromise.php ├── http │ ├── Message.php │ ├── Request.php │ ├── Response.php │ ├── Server.php │ └── ServerProtocol.php ├── processing │ └── Process.php ├── stream │ ├── Client.php │ ├── ProtocolInterface.php │ ├── Server.php │ └── Stream.php └── watcher │ ├── FdWatcher.php │ ├── FdWatcherHandler.php │ ├── FileWatcher.php │ ├── FileWatcherHandler.php │ ├── ProcessWatcher.php │ └── ProcessWatcherHandler.php ├── run-tests ├── src ├── defer │ ├── defer.h │ ├── deferred.c │ ├── fulfilled_promise.c │ ├── promise.c │ └── rejected_promise.c ├── http │ ├── http.h │ ├── message.c │ ├── protocol.c │ ├── request.c │ ├── response.c │ └── server.c ├── object.c ├── processing │ ├── process.c │ └── process.h ├── reactor.c ├── reactor.h ├── skyray.c ├── skyray.h ├── stream │ ├── client.c │ ├── client.h │ ├── protocol.c │ ├── protocol.h │ ├── server.c │ ├── server.h │ ├── stream.c │ └── stream.h ├── timer.c ├── timer.h └── watcher │ ├── fdwatcher.c │ ├── process_watcher.c │ └── watcher.h └── tests ├── 001_object.phpt ├── 002_stream_peername.phpt ├── 003_stream_client_connectTCP.phpt ├── 004_stream_client_createPipe.phpt ├── 005_stream_client_nonblocking.phpt ├── 006_reactor_timer.phpt ├── 007_stream_convert_nonblocking.phpt ├── 008_stream_convert_nonblocking_pipe.phpt ├── 010_stream_simple_server.phpt ├── 021_promise_01.phpt ├── 022_promise_02.phpt ├── 023_promise_03.phpt ├── 024_promise_04.phpt ├── 025_promise_05.phpt ├── 026_promise_06.phpt ├── 030_http_message.phpt ├── 031_http_request.phpt ├── 032_http_response.phpt ├── 033_http_protocol.phpt ├── 035_http_server.phpt ├── 036_http_server_throw_exception.phpt ├── 051_processing_01.phpt ├── 061_watcher_fdwatcher_01.phpt ├── 062_watcher_process_watcher.phpt └── includes ├── ServerProcess.php ├── SimpleEchoProtocol.php ├── SimpleHttpClient.php └── SimpleHttpServer.php /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/.gitmodules -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/.travis.yml -------------------------------------------------------------------------------- /Makefile.frag: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/Makefile.frag -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/README.md -------------------------------------------------------------------------------- /config.m4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/config.m4 -------------------------------------------------------------------------------- /config.w32: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/config.w32 -------------------------------------------------------------------------------- /proto/BaseException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/BaseException.php -------------------------------------------------------------------------------- /proto/InvalidCallException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/InvalidCallException.php -------------------------------------------------------------------------------- /proto/InvalidConfigException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/InvalidConfigException.php -------------------------------------------------------------------------------- /proto/InvalidParamException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/InvalidParamException.php -------------------------------------------------------------------------------- /proto/InvalidPropertyException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/InvalidPropertyException.php -------------------------------------------------------------------------------- /proto/Object.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/Object.php -------------------------------------------------------------------------------- /proto/Reactor.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/Reactor.php -------------------------------------------------------------------------------- /proto/Timer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/Timer.php -------------------------------------------------------------------------------- /proto/UnknownPropertyException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/UnknownPropertyException.php -------------------------------------------------------------------------------- /proto/Watcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/Watcher.php -------------------------------------------------------------------------------- /proto/defer/Deferred.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/defer/Deferred.php -------------------------------------------------------------------------------- /proto/defer/FulfilledPromise.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/defer/FulfilledPromise.php -------------------------------------------------------------------------------- /proto/defer/Promise.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/defer/Promise.php -------------------------------------------------------------------------------- /proto/defer/PromiseInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/defer/PromiseInterface.php -------------------------------------------------------------------------------- /proto/defer/RejectedPromise.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/defer/RejectedPromise.php -------------------------------------------------------------------------------- /proto/http/Message.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/http/Message.php -------------------------------------------------------------------------------- /proto/http/Request.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/http/Request.php -------------------------------------------------------------------------------- /proto/http/Response.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/http/Response.php -------------------------------------------------------------------------------- /proto/http/Server.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/http/Server.php -------------------------------------------------------------------------------- /proto/http/ServerProtocol.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/http/ServerProtocol.php -------------------------------------------------------------------------------- /proto/processing/Process.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/processing/Process.php -------------------------------------------------------------------------------- /proto/stream/Client.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/stream/Client.php -------------------------------------------------------------------------------- /proto/stream/ProtocolInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/stream/ProtocolInterface.php -------------------------------------------------------------------------------- /proto/stream/Server.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/stream/Server.php -------------------------------------------------------------------------------- /proto/stream/Stream.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/stream/Stream.php -------------------------------------------------------------------------------- /proto/watcher/FdWatcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/watcher/FdWatcher.php -------------------------------------------------------------------------------- /proto/watcher/FdWatcherHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/watcher/FdWatcherHandler.php -------------------------------------------------------------------------------- /proto/watcher/FileWatcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/watcher/FileWatcher.php -------------------------------------------------------------------------------- /proto/watcher/FileWatcherHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/watcher/FileWatcherHandler.php -------------------------------------------------------------------------------- /proto/watcher/ProcessWatcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/watcher/ProcessWatcher.php -------------------------------------------------------------------------------- /proto/watcher/ProcessWatcherHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/proto/watcher/ProcessWatcherHandler.php -------------------------------------------------------------------------------- /run-tests: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/run-tests -------------------------------------------------------------------------------- /src/defer/defer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/defer/defer.h -------------------------------------------------------------------------------- /src/defer/deferred.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/defer/deferred.c -------------------------------------------------------------------------------- /src/defer/fulfilled_promise.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/defer/fulfilled_promise.c -------------------------------------------------------------------------------- /src/defer/promise.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/defer/promise.c -------------------------------------------------------------------------------- /src/defer/rejected_promise.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/defer/rejected_promise.c -------------------------------------------------------------------------------- /src/http/http.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/http/http.h -------------------------------------------------------------------------------- /src/http/message.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/http/message.c -------------------------------------------------------------------------------- /src/http/protocol.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/http/protocol.c -------------------------------------------------------------------------------- /src/http/request.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/http/request.c -------------------------------------------------------------------------------- /src/http/response.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/http/response.c -------------------------------------------------------------------------------- /src/http/server.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/http/server.c -------------------------------------------------------------------------------- /src/object.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/object.c -------------------------------------------------------------------------------- /src/processing/process.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/processing/process.c -------------------------------------------------------------------------------- /src/processing/process.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/processing/process.h -------------------------------------------------------------------------------- /src/reactor.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/reactor.c -------------------------------------------------------------------------------- /src/reactor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/reactor.h -------------------------------------------------------------------------------- /src/skyray.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/skyray.c -------------------------------------------------------------------------------- /src/skyray.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/skyray.h -------------------------------------------------------------------------------- /src/stream/client.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/client.c -------------------------------------------------------------------------------- /src/stream/client.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/client.h -------------------------------------------------------------------------------- /src/stream/protocol.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/protocol.c -------------------------------------------------------------------------------- /src/stream/protocol.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/protocol.h -------------------------------------------------------------------------------- /src/stream/server.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/server.c -------------------------------------------------------------------------------- /src/stream/server.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/server.h -------------------------------------------------------------------------------- /src/stream/stream.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/stream.c -------------------------------------------------------------------------------- /src/stream/stream.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/stream/stream.h -------------------------------------------------------------------------------- /src/timer.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/timer.c -------------------------------------------------------------------------------- /src/timer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/timer.h -------------------------------------------------------------------------------- /src/watcher/fdwatcher.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/watcher/fdwatcher.c -------------------------------------------------------------------------------- /src/watcher/process_watcher.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/watcher/process_watcher.c -------------------------------------------------------------------------------- /src/watcher/watcher.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/src/watcher/watcher.h -------------------------------------------------------------------------------- /tests/001_object.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/001_object.phpt -------------------------------------------------------------------------------- /tests/002_stream_peername.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/002_stream_peername.phpt -------------------------------------------------------------------------------- /tests/003_stream_client_connectTCP.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/003_stream_client_connectTCP.phpt -------------------------------------------------------------------------------- /tests/004_stream_client_createPipe.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/004_stream_client_createPipe.phpt -------------------------------------------------------------------------------- /tests/005_stream_client_nonblocking.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/005_stream_client_nonblocking.phpt -------------------------------------------------------------------------------- /tests/006_reactor_timer.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/006_reactor_timer.phpt -------------------------------------------------------------------------------- /tests/007_stream_convert_nonblocking.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/007_stream_convert_nonblocking.phpt -------------------------------------------------------------------------------- /tests/008_stream_convert_nonblocking_pipe.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/008_stream_convert_nonblocking_pipe.phpt -------------------------------------------------------------------------------- /tests/010_stream_simple_server.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/010_stream_simple_server.phpt -------------------------------------------------------------------------------- /tests/021_promise_01.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/021_promise_01.phpt -------------------------------------------------------------------------------- /tests/022_promise_02.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/022_promise_02.phpt -------------------------------------------------------------------------------- /tests/023_promise_03.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/023_promise_03.phpt -------------------------------------------------------------------------------- /tests/024_promise_04.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/024_promise_04.phpt -------------------------------------------------------------------------------- /tests/025_promise_05.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/025_promise_05.phpt -------------------------------------------------------------------------------- /tests/026_promise_06.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/026_promise_06.phpt -------------------------------------------------------------------------------- /tests/030_http_message.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/030_http_message.phpt -------------------------------------------------------------------------------- /tests/031_http_request.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/031_http_request.phpt -------------------------------------------------------------------------------- /tests/032_http_response.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/032_http_response.phpt -------------------------------------------------------------------------------- /tests/033_http_protocol.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/033_http_protocol.phpt -------------------------------------------------------------------------------- /tests/035_http_server.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/035_http_server.phpt -------------------------------------------------------------------------------- /tests/036_http_server_throw_exception.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/036_http_server_throw_exception.phpt -------------------------------------------------------------------------------- /tests/051_processing_01.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/051_processing_01.phpt -------------------------------------------------------------------------------- /tests/061_watcher_fdwatcher_01.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/061_watcher_fdwatcher_01.phpt -------------------------------------------------------------------------------- /tests/062_watcher_process_watcher.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/062_watcher_process_watcher.phpt -------------------------------------------------------------------------------- /tests/includes/ServerProcess.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/includes/ServerProcess.php -------------------------------------------------------------------------------- /tests/includes/SimpleEchoProtocol.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/includes/SimpleEchoProtocol.php -------------------------------------------------------------------------------- /tests/includes/SimpleHttpClient.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/includes/SimpleHttpClient.php -------------------------------------------------------------------------------- /tests/includes/SimpleHttpServer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SkyrayLabs/Skyray/HEAD/tests/includes/SimpleHttpServer.php --------------------------------------------------------------------------------