Pwirth has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/282366

Change subject: BSApiTasksBase: Implemented pseudo code for future param 
processing
......................................................................

BSApiTasksBase: Implemented pseudo code for future param processing

Change-Id: I8362290d515a04fb96382b12da78159759b63497
---
M includes/api/BSApiTasksBase.php
1 file changed, 41 insertions(+), 1 deletion(-)


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

diff --git a/includes/api/BSApiTasksBase.php b/includes/api/BSApiTasksBase.php
index c4c3411..ab9b92f 100644
--- a/includes/api/BSApiTasksBase.php
+++ b/includes/api/BSApiTasksBase.php
@@ -89,7 +89,12 @@
                        else {
                                $oTaskData = $this->getParameter( 'taskData' );
                                Hooks::run( 'BSApiTasksBaseBeforeExecuteTask', 
array( $this, $sTask, &$oTaskData , &$aParams ) );
-                               $oResult = $this->$sMethod( $oTaskData , 
$aParams );
+
+                               $oResult = $this->validateTaskData( $oTaskData 
);
+                               if( empty($oResult->errors) && 
empty($oResult->message) ) {
+                                       $oResult = $this->$sMethod( $oTaskData 
, $aParams );
+                               }
+
                                Hooks::run( 'BSApiTasksBaseAfterExecuteTask', 
array( $this, $sTask, &$oResult, $oTaskData , $aParams ) );
                        }
                }
@@ -300,6 +305,41 @@
        }
 
        /**
+        * NOT IMPLEMENTED YET
+        * Return the param definition for each task
+        * array(
+        *    taskname => array(
+        *       paramname => array(
+        *           type => string,
+        *           required => true,
+        *           default => '',
+        *       )
+        *    )
+        * );
+        * @return array - or false to skip validation
+        */
+       public function getTaskDataDefinitions() {
+               return false;
+       }
+
+       /**
+        * NOT IMPLEMENTED YET
+        * Use ParamProcessor to validate taskData params
+        * @param stdClass $oTaskData
+        * @return stdClass - Standard return
+        */
+       public function validateTaskData( $oTaskData ) {
+               $aDefinitions = $this->getTaskDataDefinitions();
+               $oReturn = $this->makeStandardReturn();
+               if( $aDefinitions === false ) {
+                       return $oReturn;
+               }
+               //TODO: Use ParamProcessor to validate params defined by
+               //$this->getTaskDataDefinitions().
+               return $oReturn;
+       }
+
+       /**
         * General protection
         * @return string
         */

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I8362290d515a04fb96382b12da78159759b63497
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/BlueSpiceFoundation
Gerrit-Branch: master
Gerrit-Owner: Pwirth <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to