public function cancel(Customweb_Payment_Authorization_ITransaction $transaction)
 {
     if (!$transaction instanceof Customweb_Saferpay_Authorization_Transaction) {
         throw new Exception("The given transaction is not instanceof Customweb_Saferpay_Authorization_Transaction.");
     }
     $transaction->cancelDry();
     $builder = new Customweb_Saferpay_BackendOperation_Adapter_Cancel_ParameterBuilder($transaction, $this->getConfiguration(), $this->container);
     $parameters = $builder->buildParameters();
     $this->performPayCompleteAction($parameters, Customweb_I18n_Translation::__('Transaction could not be canceled.'));
     $transaction->cancel();
 }