static public function translateException(\Exception $exception, $add_msg = null)
    {
        $msg = strval($add_msg) . $exception->getMessage();
        switch (get_class($exception)) {
            case 'Aws\Sns\Exception\AuthorizationErrorException':
            case 'Aws\Sns\Exception\EndpointDisabledException':
            case 'Aws\Sns\Exception\InvalidParameterException':
            case 'Aws\Sns\Exception\PlatformApplicationDisabledException':
            case 'Aws\Sns\Exception\SubscriptionLimitExceededException':
            case 'Aws\Sns\Exception\TopicLimitExceededException':
                return new BadRequestException($msg, $exception->getCode());
            case 'Aws\Sns\Exception\NotFoundException':
                return new NotFoundException($msg, $exception->getCode());
            case 'Aws\Sns\Exception\SnsException':
            case 'Aws\Sns\Exception\InternalErrorException':
                return new InternalServerErrorException($msg, $exception->getCode());
            default:
                return null;
        }
    }
static public function translateException(\Exception $exception, $add_msg = null)
    {
        $msg = strval($add_msg) . $exception->getMessage();
        switch (get_class($exception)) {
            case 'Aws\Sns\Exception\AuthorizationErrorException':
            case 'Aws\Sns\Exception\EndpointDisabledException':
            case 'Aws\Sns\Exception\InvalidParameterException':
            case 'Aws\Sns\Exception\PlatformApplicationDisabledException':
            case 'Aws\Sns\Exception\SubscriptionLimitExceededException':
            case 'Aws\Sns\Exception\TopicLimitExceededException':
                return new BadRequestException($msg, $exception->getCode());
            case 'Aws\Sns\Exception\NotFoundException':
                return new NotFoundException($msg, $exception->getCode());
            case 'Aws\Sns\Exception\SnsException':
            case 'Aws\Sns\Exception\InternalErrorException':
                return new InternalServerErrorException($msg, $exception->getCode());
            default:
                return null;
        }
    }
static public function translateException ( \ Exception $ exception , $ add_msg = null ) { $ msg = strval ( $ add_msg ) . $ exception -> getMessage ( ) ; switch ( get_class ( $ exception ) ) { case 'Aws\Sns\Exception\AuthorizationErrorException' : case 'Aws\Sns\Exception\EndpointDisabledException' : case 'Aws\Sns\Exception\InvalidParameterException' : case 'Aws\Sns\Exception\PlatformApplicationDisabledException' : case 'Aws\Sns\Exception\SubscriptionLimitExceededException' : case 'Aws\Sns\Exception\TopicLimitExceededException' : return new BadRequestException ( $ msg , $ exception -> getCode ( ) ) ; case 'Aws\Sns\Exception\NotFoundException' : return new NotFoundException ( $ msg , $ exception -> getCode ( ) ) ; case 'Aws\Sns\Exception\SnsException' : case 'Aws\Sns\Exception\InternalErrorException' : return new InternalServerErrorException ( $ msg , $ exception -> getCode ( ) ) ; default : return null ; } }
Translates AWS SNS Exceptions to DF Exceptions
If not an AWS SNS Exception, then null is returned.

@param \Exception  $exception
@param string|null $add_msg

@return BadRequestException|InternalServerErrorException|NotFoundException|null
Translates AWS SNS Exceptions to DF Exceptions If not an AWS SNS Exception then null is returned .