Skip to content

SemanticMediaWiki/callback-container

 
 

Repository files navigation

Callback container

CI Latest Stable Version Total Download Count codecov

A simple object instantiator to lazy load registered callback handlers. Part of the code base has been extracted from Semantic MediaWiki and is now being deployed as independent library.

Requirements

  • PHP 8.1 or later

Installation

The recommended installation method for this library is to add the dependency to your composer.json.

{
	"require": {
		"mediawiki/callback-container": "~3.0"
	}
}

Usage

use Onoi\CallbackContainer\CallbackContainerFactory;

$callbackContainerFactory = new CallbackContainerFactory();
$containerBuilder = $callbackContainerFactory->newCallbackContainerBuilder();

$containerBuilder->registerCallbackContainer( ... );

$service = $containerBuilder->create( ... );
$service = $containerBuilder->singleton( ... );

This document contains detailed examples on how to use the CallbackContainerFactory and ContainerBuilder.

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 guidelines. A list of people who have made contributions in the past can be found here.

Tests

The library provides unit tests that covers the core-functionality normally run by the [continues integration platform][travis]. Tests can also be executed manually using the composer phpunit command from the root directory.

Release notes

3.0.0 (2026-03-29)

  • Adds support for php 8.1-8.4
  • Requires PHP 8.1+
  • Under new composer namespace mediawiki/callback-container

2.0.0 (2017-02-18)

  • Requires PHP 5.5+
  • Added CallbackContainerFactory
  • Added CallbackContainerBuilder::registerAlias
  • Added CallbackContainerBuilder::registerFromFile to allow loading callback definitions from a file

1.1.0 (2016-04-30)

  • Fixed issue in registeredObject for when a singleton override contained a null argument
  • Deprecated the CallbackLoader interface in favour of the CallbackInstantiator interface
  • Deprecated the NullCallbackLoader class in favour of the NullCallbackInstantiator class

1.0.0 (2015-09-08)

  • Added the CallbackContainer and CallbackLoader interface
  • Added the DeferredCallbackLoader and NullCallbackLoader implementation

License

GNU General Public License 2.0 or later.

About

A simple callback container registry library

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • PHP 99.0%
  • Shell 1.0%