protected function _verifyTransaction($transaction) { if (is_array($transaction)) { foreach ($transaction as $operation) { if (!$operation instanceof Engine_Package_Manager_Operation_Abstract) { throw new Engine_Package_Manager_Exception('Not an operation'); } } $transaction = new Engine_Package_Manager_Transaction($this, $transaction); } else { if ($transaction instanceof Engine_Package_Manager_Operation_Abstract) { $transaction = new Engine_Package_Manager_Transaction($this, array($transaction)); } else { if (!$transaction instanceof Engine_Package_Manager_Transaction) { throw new Engine_Package_Manager_Exception('Not a transaction'); } else { $transaction->setManager($this); } } } return $transaction; }