2017 © Pedro Peláez
 

library message-reporter

An interface to report and relay arbitrary messages to registered handlers

image

onoi/message-reporter

An interface to report and relay arbitrary messages to registered handlers

  • Saturday, January 20, 2018
  • by mwjames
  • Repository
  • 1 Watchers
  • 1 Stars
  • 134,106 Installations
  • PHP
  • 2 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 5 Versions
  • 4 % Grown

The README.md

Message Reporter

Build Status Code Coverage Scrutinizer Code Quality Latest Stable Version Packagist download count, (*1)

An interface to report and relay arbitrary messages to registered handlers. This was part of the Semantic MediaWiki code base and is now being deployed as independent library., (*2)

Requirements

PHP 7.3 or later, (*3)

Installation

The recommended installation method for this library is to add it as dependency to your composer.json., (*4)

{
    "require": {
        "onoi/message-reporter": "~1.4"
    }
}

Usage

The message reporter specifies MessageReporter and MessageReporterAware as an interface for all interactions with a set of supporting classes: - MessageReporterFactory - ObservableMessageReporter - NullMessageReporter - SpyMessageReporter - CallbackMessageReporter, (*5)

use Onoi\MessageReporter\MessageReporterFactory;
use Onoi\MessageReporter\MessageReporterAware;
use Onoi\MessageReporter\MessageReporterAwareTrait;

class Bar implements MessageReporterAware {

    use MessageReporterAwareTrait;

    public function __construct() {
        $this->messageReporter = MessageReporterFactory::getInstance()->newNullMessageReporter();
    }

    public function doSomething() {
        $this->messageReporter->reportMessage( 'Doing ...' );
    }
}
use Onoi\MessageReporter\MessageReporterFactory;
use Onoi\MessageReporter\MessageReporter;

class Foo implements MessageReporter {

    public function reportMessage( $message ) {
        // output
    }
}

$foo = new Foo();

$messageReporterFactory = new MessageReporterFactory();

$observableMessageReporter = $messageReporterFactory->newObservableMessageReporter();
$observableMessageReporter->registerReporterCallback( array( $foo, 'reportMessage' ) );

or

// If the class implements the MessageReporter
$observableMessageReporter->registerMessageReporter( $foo );

$bar = new Bar();
$bar->setMessageReporter( $observableMessageReporter );

Contribution and support

If you want to contribute work to the project please subscribe to the developers mailing list and have a look at the contribution guidelinee. A list of people who have made contributions in the past can be found here., (*6)

Development

Start by installing the project dependencies by executing, (*7)

composer update

You can run the tests by executing, (*8)

make test

You can run the style checks by executing, (*9)

make cs

To run all CI checks, execute, (*10)

make ci

You can also invoke PHPUnit directly to pass it arguments, as follows, (*11)

vendor/bin/phpunit --filter SomeClassNameOrFilter

Release notes

  • 1.4.2 (2021-01-15), (*12)

    • Added support for PHP 8
    • Changed minimum PHP version to 7.3
  • 1.4.1 (2019-04-10), (*13)

    • Added .gitattributes
  • 1.4.0 (2019-04-08), (*14)

    • Added CallbackMessageReporter
    • Changed minimum PHP version to 5.6.99
  • 1.3.0 (2017-11-05), (*15)

    • Added MessageReporterAwareTrait
  • 1.2.0 (2016-08-02), (*16)

    • Added MessageReporterAware and SpyMessageReporter
  • 1.1.0 (2016-04-13), (*17)

    • ObservableMessageReporter::registerReporterCallback to register only callable handlers
  • 1.0.0 (2015-01-24), (*18)

    • Initial release
    • MessageReporterFactory
    • ObservableMessageReporter
    • NullMessageReporter
    • MessageReporter

License

GNU General Public License 2.0 or later., (*19)

The Versions

20/01 2018

dev-master

9999999-dev https://github.com/onoi/message-reporter

An interface to report and relay arbitrary messages to registered handlers

  Sources   Download

GPL-2.0+ GPL-2.0-or-later

The Requires

  • php >=5.5

 

messages

05/11 2017

1.3.0

1.3.0.0 https://github.com/onoi/message-reporter

An interface to report and relay arbitrary messages to registered handlers

  Sources   Download

GPL-2.0+

The Requires

  • php >=5.5

 

messages

02/08 2016

1.2.0

1.2.0.0 https://github.com/onoi/message-reporter

An interface to report and relay arbitrary messages to registered handlers

  Sources   Download

GPL-2.0+

The Requires

  • php >=5.3.2

 

messages

13/04 2016

1.1.0

1.1.0.0 https://github.com/onoi/message-reporter

An interface to report and relay arbitrary messages to registered handlers

  Sources   Download

GPL-2.0+

The Requires

  • php >=5.3.2

 

messages

24/01 2015

1.0.0

1.0.0.0 https://github.com/onoi/message-reporter

An interface to report and relay arbitrary messages to registered handlers

  Sources   Download

GPL-2.0+

The Requires

  • php >=5.3.2

 

messages