avto-dev / rabbitmq-api-client
RabbitMQ API Client implementation
Installs: 6 195
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 5
Open Issues: 0
Requires
- php: ^8.1
- ext-json: *
- ext-mbstring: *
- composer/package-versions-deprecated: ^1.11
- guzzlehttp/guzzle: ^7.7
- illuminate/config: ~10.0 || ~11.0
- illuminate/contracts: ~10.0 || ~11.0
- illuminate/support: ~10.0 || ~11.0
Requires (Dev)
- laravel/laravel: ~10.0 || ~11.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.5
README
RabbitMQ API Client
This package adds into your PHP application RabbitMQ API client implementation.
Install
Require this package with composer using the following command:
$ composer require avto-dev/rabbitmq-api-client "^2.0"
Installed
composer
is required (how to install composer).
You need to fix the major version of package.
After that you can "publish" package configuration file using following command:
$ php artisan vendor:publish --provider="AvtoDev\\RabbitMqApiClient\\Frameworks\\Illuminate\\LaravelServiceProvider"
Usage
At first, you should create API client instance:
<?php use AvtoDev\RabbitMqApiClient\Client; use AvtoDev\RabbitMqApiClient\ConnectionSettings; $client = new Client(new ConnectionSettings('http://127.0.0.1:15672', 'guest', 'guest')); // And after that you can execute API commands, for example: $client::version(); // Client version, like `1.0.0` $client->healthcheck(); // `true` or `false` $client->queueInfo('some-queue-name'); // Object with information about queue
If you are using Laravel framework with registered package service-provider, you can resolve client instance using DI, for example:
<?php namespace App\Console\Commands; use AvtoDev\RabbitMqApiClient\ClientInterface; class SomeCommand extends \Illuminate\Console\Command { /** * The console command name. * * @var string */ protected $name = 'some:command'; /** * Execute the console command. * * @param ClientInterface $client * * @return void */ public function handle(ClientInterface $client): void { $client->healthcheck(); // `true` or `false` } }
Testing
For package testing we use phpunit
framework and docker-ce
+ docker-compose
as develop environment. So, just write into your terminal after repository cloning:
$ make build $ make latest # or 'make lowest' $ make test
Changes log
Changes log can be found here.
Support
If you will find any package errors, please, make an issue in current repository.
License
This is open-sourced software licensed under the MIT License.