for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Onoi\MessageReporter;
/**
* @license GNU GPL v2+
* @since 1.0
*
* @author mwjames
*/
class MessageReporterFactory {
* @var MessageReporterFactory
private static $instance = null;
* @return MessageReporterFactory
public static function getInstance() {
if ( self::$instance === null ) {
self::$instance = new self();
}
return self::$instance;
public static function clear() {
self::$instance = null;
* @return NullMessageReporter
public function newNullMessageReporter() {
return new NullMessageReporter();
* @return ObservableMessageReporter
public function newObservableMessageReporter() {
return new ObservableMessageReporter();
* @since 1.2
* @return SpyMessageReporter
public function newSpyMessageReporter() {
return new SpyMessageReporter();