Services
From semantic-mediawiki.org
Services contain object definitions that with the help of a builder will handle the object build process and provides instance reuse, if necessary.
$smwgServicesFileDir
describes the location of the services directory.
Services factory
Object instances are generally accessed using the ServicesFactory
locator and its public methods.
Service files and containers
Files
importer.php
provides services for the Importermediawiki.php
isolates MediaWiki specific functions and servicesevents.php
isolates event services
Containers
SharedServicesContainer.php
contains common and shared object definitions used throughout the Semantic MediaWiki code base and are accessible viaServicesFactory
ServicesContainer
temporary container to be used to inject services into a object instance
Service specific factories
DataValueServiceFactory
provides service and factory functions forDataValue
objects that are specified indatavalues.php
ImporterServiceFactory
Services registration
$containerBuilder = new CallbackContainerFactory(); $containerBuilder = $callbackContainerFactory->newCallbackContainerBuilder(); $containerBuilder->registerCallbackContainer( new SharedServicesContainer() ); $containerBuilder->registerFromFile( $GLOBALS['smwgServicesFileDir'] . '/' . 'mediawiki.php' );
Example for a service[edit]
- Extraneous language − provides "extraneous" language functions independent of MediaWiki required by Semantic MediaWiki and its registration system.