Pwirth has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/385363 )

Change subject: BSFoundation: Improvements to the new config definition
......................................................................

BSFoundation: Improvements to the new config definition

* removed unused getDescrittionMessage method
* fixed typo
* removed the default handler functionality, as only defined config will
be used as settings

Change-Id: I5c71350952270524af484e43b8b37d532f8b61af
---
M src/ConfigDefinition.php
M src/ConfigDefinition/ArraySetting.php
M src/ConfigDefinition/IntSetting.php
M src/ConfigDefinition/StringSetting.php
M src/ISetting.php
5 files changed, 11 insertions(+), 53 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpiceFoundation 
refs/changes/63/385363/1

diff --git a/src/ConfigDefinition.php b/src/ConfigDefinition.php
index 7bdd610..41d7002 100644
--- a/src/ConfigDefinition.php
+++ b/src/ConfigDefinition.php
@@ -51,39 +51,17 @@
                        return false;
                }
                $definitions = static::getConfigDefinitions();
-               if( isset( $definitions[$name] ) ) {
-                       $callback = $definitions[$name];
-               } else {
-                       $callback = static::getDefaultDefinitionCallback(
-                               $name,
-                               $config
-                       );
-                       if( !$callback ) {
-                               return false;
-                       }
-               }
-               if( !is_callable( $callback ) ) {
+               if( !isset( $definitions[$name] ) ) {
                        return false;
                }
-               return call_user_func_array( $callback, [
+               if( !is_callable( $definitions[$name] ) ) {
+                       return false;
+               }
+               return call_user_func_array( $definitions[$name], [
                        \RequestContext::getMain(),
                        $config,
                        $name,
                ]);
-       }
-
-       protected static function getDefaultDefinitionCallback( $name, \Config 
$config = null ) {
-               //TODO: make this configurable
-               if( is_string( $config->get( $name ) ) ) {
-                       return 
"\\BlueSpice\\ConfigDefinition\\StringSetting::getInstance";
-               }
-               if( is_int( $config->get( $name ) ) ) {
-                       return 
"\\BlueSpice\\ConfigDefinition\\IntSetting::getInstance";
-               }
-               if( is_array( $config->get( $name ) ) ) {
-                       return 
"\\BlueSpice\\ConfigDefinition\\ArraySetting::getInstance";
-               }
-               return null;
        }
 
        protected static function getConfigDefinitions() {
@@ -122,14 +100,6 @@
 
        /**
         *
-        * @return \Message
-        */
-       public function getDescripttionMessage() {
-               return null;
-       }
-
-       /**
-        *
         * @return mixed
         */
        public function getValue() {
@@ -164,7 +134,7 @@
                return [
                        static::MAIN_PATH_TYPE . '/' . static::TYPE_SYSTEM,
                        static::MAIN_PATH_EXTENSION . '/BlueSpiceFoundation',
-                       static::MAIN_PATH_PAKAGE . '/BlueSpice',
+                       static::MAIN_PATH_PACKAGE . '/BlueSpice',
                ];
        }
 
diff --git a/src/ConfigDefinition/ArraySetting.php 
b/src/ConfigDefinition/ArraySetting.php
index 01dd99e..69f6187 100644
--- a/src/ConfigDefinition/ArraySetting.php
+++ b/src/ConfigDefinition/ArraySetting.php
@@ -2,7 +2,7 @@
 
 namespace BlueSpice\ConfigDefinition;
 
-class ArraySetting extends \BlueSpice\ConfigDefinition {
+abstract class ArraySetting extends \BlueSpice\ConfigDefinition {
 
        public function getHtmlFormField() {
                return new \HTMLMultiSelectEx( $this->makeFormFieldParams() );
@@ -12,9 +12,5 @@
                $params = parent::makeFormFieldParams();
                $params['options'] = $this->getValue();
                return $params;
-       }
-
-       public function getLabelMessageKey() {
-               return $this->getVariableName();
        }
 }
diff --git a/src/ConfigDefinition/IntSetting.php 
b/src/ConfigDefinition/IntSetting.php
index 2db23c7..cf726db 100644
--- a/src/ConfigDefinition/IntSetting.php
+++ b/src/ConfigDefinition/IntSetting.php
@@ -2,7 +2,7 @@
 
 namespace BlueSpice\ConfigDefinition;
 
-class IntSetting extends \BlueSpice\ConfigDefinition {
+abstract class IntSetting extends \BlueSpice\ConfigDefinition {
 
        public function getHtmlFormField() {
                return new \HTMLIntFieldOverride( $this->makeFormFieldParams() 
);
@@ -11,9 +11,5 @@
        protected function makeFormFieldParams() {
                $params = parent::makeFormFieldParams();
                return $params;
-       }
-
-       public function getLabelMessageKey() {
-               return $this->getVariableName();
        }
 }
diff --git a/src/ConfigDefinition/StringSetting.php 
b/src/ConfigDefinition/StringSetting.php
index d4f75bb..0f2350c 100644
--- a/src/ConfigDefinition/StringSetting.php
+++ b/src/ConfigDefinition/StringSetting.php
@@ -2,7 +2,7 @@
 
 namespace BlueSpice\ConfigDefinition;
 
-class StringSetting extends \BlueSpice\ConfigDefinition {
+abstract class StringSetting extends \BlueSpice\ConfigDefinition {
 
        public function getHtmlFormField() {
                return new \HTMLTextFieldOverride( $this->makeFormFieldParams() 
);
@@ -11,9 +11,5 @@
        protected function makeFormFieldParams() {
                $params = parent::makeFormFieldParams();
                return $params;
-       }
-
-       public function getLabelMessageKey() {
-               return $this->getVariableName();
        }
 }
diff --git a/src/ISetting.php b/src/ISetting.php
index 570b8ad..e872199 100644
--- a/src/ISetting.php
+++ b/src/ISetting.php
@@ -5,7 +5,7 @@
 interface ISetting {
        const MAIN_PATH_TYPE = 'type';
        const MAIN_PATH_EXTENSION = 'extension';
-       const MAIN_PATH_PAKAGE = 'pakage';
+       const MAIN_PATH_PACKAGE = 'package';
 
        const TYPE_SYSTEM = 'system';
        const TYPE_INTERFACE = 'interface';
@@ -21,7 +21,7 @@
        /**
         * @return array An array of paths that define where to provide an input
         * field within the settings UI. E.g.
-        * [ 'type/interface', 'extension/<extensionX>', 'pakage/<pakageX>' ]
+        * [ 'type/interface', 'extension/<extensionX>', 'package/<packageX>' ]
         * ATTENTION: Path elements need a message key to be available following
         * the pattern 'bs-setting-path-<elementName>'. E. g.
         * 'bs-setting-path-<extensionX>'

-- 
To view, visit https://gerrit.wikimedia.org/r/385363
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5c71350952270524af484e43b8b37d532f8b61af
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/BlueSpiceFoundation
Gerrit-Branch: master
Gerrit-Owner: Pwirth <wi...@hallowelt.biz>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to