diff options
Diffstat (limited to 'www/wiki/extensions/SemanticMediaWiki/src/ParameterProcessorFactory.php')
-rw-r--r-- | www/wiki/extensions/SemanticMediaWiki/src/ParameterProcessorFactory.php | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/www/wiki/extensions/SemanticMediaWiki/src/ParameterProcessorFactory.php b/www/wiki/extensions/SemanticMediaWiki/src/ParameterProcessorFactory.php new file mode 100644 index 00000000..c9db2b54 --- /dev/null +++ b/www/wiki/extensions/SemanticMediaWiki/src/ParameterProcessorFactory.php @@ -0,0 +1,41 @@ +<?php + +namespace SMW; + +/** + * @license GNU GPL v2+ + * @since 1.9 + * + * @author mwjames + */ +class ParameterProcessorFactory { + + /** + * @since 1.9 + * + * @param array $parameters + * + * @return ParserParameterProcessor + */ + public static function newFromArray( array $parameters ) { + $instance = new self(); + return $instance->newParserParameterProcessor( $parameters ); + } + + /** + * @since 2.3 + * + * @param array $parameters + * + * @return ParserParameterProcessor + */ + public function newParserParameterProcessor( array $parameters ) { + + if ( isset( $parameters[0] ) && is_object( $parameters[0] ) ) { + array_shift( $parameters ); + } + + return new ParserParameterProcessor( $parameters ); + } + +} |