DeliveryReportController.php in SMS Framework 8
Same filename and directory in other branches
Namespace
Drupal\smsFile
src/DeliveryReportController.phpView source
<?php
namespace Drupal\sms;
use Drupal\Core\DependencyInjection\ContainerInjectionInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\HttpFoundation\Request;
use Drupal\sms\Entity\SmsGatewayInterface;
use Drupal\sms\Provider\SmsProviderInterface;
/**
* Provides delivery reports acknowledgement and passes to the correct gateway.
*/
class DeliveryReportController implements ContainerInjectionInterface {
/**
* The SMS Provider.
*
* @var \Drupal\sms\Provider\SmsProviderInterface
*/
protected $smsProvider;
/**
* The request stack.
*
* @var \Symfony\Component\HttpFoundation\RequestStack
*/
protected $requestStack;
/**
* Creates an new delivery report controller.
*
* @param \Drupal\sms\Provider\SmsProviderInterface $sms_provider
* The SMS service provider.
*/
public function __construct(SmsProviderInterface $sms_provider) {
$this->smsProvider = $sms_provider;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container) {
return new static($container
->get('sms.provider'));
}
/**
* Acknowledges delivery reports and passes them to the correct gateway.
*
* @param \Symfony\Component\HttpFoundation\Request $request
* The current request.
* @param \Drupal\sms\Entity\SmsGatewayInterface $sms_gateway
* The gateway which is handling the the delivery report.
*
* @return \Symfony\Component\HttpFoundation\Response
* A response object to return.
*/
public function processDeliveryReport(Request $request, SmsGatewayInterface $sms_gateway) {
return $this->smsProvider
->processDeliveryReport($request, $sms_gateway);
}
}
Classes
Name | Description |
---|---|
DeliveryReportController | Provides delivery reports acknowledgement and passes to the correct gateway. |