diff options
Diffstat (limited to 'www/wiki/extensions/SemanticMediaWiki/src/Query/ResultPrinters/ListResultPrinter/ParameterDictionary.php')
-rw-r--r-- | www/wiki/extensions/SemanticMediaWiki/src/Query/ResultPrinters/ListResultPrinter/ParameterDictionary.php | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/www/wiki/extensions/SemanticMediaWiki/src/Query/ResultPrinters/ListResultPrinter/ParameterDictionary.php b/www/wiki/extensions/SemanticMediaWiki/src/Query/ResultPrinters/ListResultPrinter/ParameterDictionary.php new file mode 100644 index 00000000..0f25baed --- /dev/null +++ b/www/wiki/extensions/SemanticMediaWiki/src/Query/ResultPrinters/ListResultPrinter/ParameterDictionary.php @@ -0,0 +1,53 @@ +<?php + +namespace SMW\Query\ResultPrinters\ListResultPrinter; + +/** + * Class ParameterDictionary + * + * @license GNU GPL v2+ + * @since 3.0 + * + * @author Stephan Gambke + */ +class ParameterDictionary { + + private $configuration = []; + + /** + * @param string|string[] $setting + * @param mixed $value + */ + public function set( $setting, $value = null ) { + + if ( !is_array( $setting ) ) { + $setting = [ $setting => $value ]; + } + + $this->configuration = array_replace( $this->configuration, $setting ); + } + + /** + * @param string $setting + * @param mixed $default + * + * @return mixed + */ + public function get( $setting, $default = '' ) { + return isset( $this->configuration[ $setting ] ) ? $this->configuration[ $setting ] : $default; + } + + /** + * @param string|string[] $setting + * @param mixed $value + */ + public function setDefault( $setting, $value = null ) { + + if ( !is_array( $setting ) ) { + $setting = [ $setting => $value ]; + } + + $this->configuration = array_replace( $setting, $this->configuration ); + } + +}
\ No newline at end of file |