From 88b63be85585de8be551876a28a74246de99a71c Mon Sep 17 00:00:00 2001 From: Matthias Schmidt Date: Sun, 20 Nov 2016 15:35:25 +0100 Subject: [PATCH] `IBulkProcessingAction::executeAction()` throws `\InvalidArgumentException` --- .../system/bulk/processing/IBulkProcessingAction.class.php | 1 + .../user/AbstractUserGroupsUserBulkProcessingAction.class.php | 4 +++- .../processing/user/DeleteUserBulkProcessingAction.class.php | 4 +++- .../user/ExportMailAddressUserBulkProcessingAction.class.php | 4 +++- .../user/SendMailUserBulkProcessingAction.class.php | 4 +++- 5 files changed, 13 insertions(+), 4 deletions(-) diff --git a/wcfsetup/install/files/lib/system/bulk/processing/IBulkProcessingAction.class.php b/wcfsetup/install/files/lib/system/bulk/processing/IBulkProcessingAction.class.php index 4fc7ee52f6..98f091cd28 100644 --- a/wcfsetup/install/files/lib/system/bulk/processing/IBulkProcessingAction.class.php +++ b/wcfsetup/install/files/lib/system/bulk/processing/IBulkProcessingAction.class.php @@ -17,6 +17,7 @@ interface IBulkProcessingAction { * list. * * @param DatabaseObjectList $objectList + * @throws \InvalidArgumentException if given object list cannot be handled by the action */ public function executeAction(DatabaseObjectList $objectList); diff --git a/wcfsetup/install/files/lib/system/bulk/processing/user/AbstractUserGroupsUserBulkProcessingAction.class.php b/wcfsetup/install/files/lib/system/bulk/processing/user/AbstractUserGroupsUserBulkProcessingAction.class.php index a16388bc17..7c9743c94d 100644 --- a/wcfsetup/install/files/lib/system/bulk/processing/user/AbstractUserGroupsUserBulkProcessingAction.class.php +++ b/wcfsetup/install/files/lib/system/bulk/processing/user/AbstractUserGroupsUserBulkProcessingAction.class.php @@ -56,7 +56,9 @@ abstract class AbstractUserGroupsUserBulkProcessingAction extends AbstractUserBu * @inheritDoc */ public function executeAction(DatabaseObjectList $objectList) { - if (!($objectList instanceof UserList)) return; + if (!($objectList instanceof UserList)) { + throw new \InvalidArgumentException("Object list is no instance of '".UserList::class."', instance of '".get_class($objectList)."' given."); + } $users = $this->getAccessibleUsers($objectList); diff --git a/wcfsetup/install/files/lib/system/bulk/processing/user/DeleteUserBulkProcessingAction.class.php b/wcfsetup/install/files/lib/system/bulk/processing/user/DeleteUserBulkProcessingAction.class.php index 477ed7ff6b..5b6c09f412 100644 --- a/wcfsetup/install/files/lib/system/bulk/processing/user/DeleteUserBulkProcessingAction.class.php +++ b/wcfsetup/install/files/lib/system/bulk/processing/user/DeleteUserBulkProcessingAction.class.php @@ -19,7 +19,9 @@ class DeleteUserBulkProcessingAction extends AbstractUserBulkProcessingAction { * @inheritDoc */ public function executeAction(DatabaseObjectList $objectList) { - if (!($objectList instanceof UserList)) return; + if (!($objectList instanceof UserList)) { + throw new \InvalidArgumentException("Object list is no instance of '".UserList::class."', instance of '".get_class($objectList)."' given."); + } $users = $this->getAccessibleUsers($objectList); diff --git a/wcfsetup/install/files/lib/system/bulk/processing/user/ExportMailAddressUserBulkProcessingAction.class.php b/wcfsetup/install/files/lib/system/bulk/processing/user/ExportMailAddressUserBulkProcessingAction.class.php index bdf6ce6a3f..80bff96a7e 100644 --- a/wcfsetup/install/files/lib/system/bulk/processing/user/ExportMailAddressUserBulkProcessingAction.class.php +++ b/wcfsetup/install/files/lib/system/bulk/processing/user/ExportMailAddressUserBulkProcessingAction.class.php @@ -37,7 +37,9 @@ class ExportMailAddressUserBulkProcessingAction extends AbstractUserBulkProcessi * @inheritDoc */ public function executeAction(DatabaseObjectList $objectList) { - if (!($objectList instanceof UserList)) return; + if (!($objectList instanceof UserList)) { + throw new \InvalidArgumentException("Object list is no instance of '".UserList::class."', instance of '".get_class($objectList)."' given."); + } // send content type header('Content-Type: text/'.$this->fileType.'; charset=UTF-8'); diff --git a/wcfsetup/install/files/lib/system/bulk/processing/user/SendMailUserBulkProcessingAction.class.php b/wcfsetup/install/files/lib/system/bulk/processing/user/SendMailUserBulkProcessingAction.class.php index fe1077fd6c..773a113986 100644 --- a/wcfsetup/install/files/lib/system/bulk/processing/user/SendMailUserBulkProcessingAction.class.php +++ b/wcfsetup/install/files/lib/system/bulk/processing/user/SendMailUserBulkProcessingAction.class.php @@ -50,7 +50,9 @@ class SendMailUserBulkProcessingAction extends AbstractUserBulkProcessingAction * @inheritDoc */ public function executeAction(DatabaseObjectList $objectList) { - if (!($objectList instanceof UserList)) return; + if (!($objectList instanceof UserList)) { + throw new \InvalidArgumentException("Object list is no instance of '".UserList::class."', instance of '".get_class($objectList)."' given."); + } if (count($objectList)) { // save config in session -- 2.20.1