NOTE: For Version 3 of the AWS SDK for PHP, please see the V3 User Guide and V3 API Reference.

# Class NamespaceExceptionFactory

Attempts to create exceptions by inferring the name from the code and a base namespace that contains exceptions. Exception classes are expected to be in upper camelCase and always end in 'Exception'. 'Exception' will be appended if it is not present in the exception code.

  Aws\Common\Exception\NamespaceExceptionFactory implements Aws\Common\Exception\ExceptionFactoryInterface

Namespace: Aws\Common\Exception
Located at Aws/Common/Exception/NamespaceExceptionFactory.php

## Methods summary

- `public` `__construct ( Aws\Common\Exception\Parser\ExceptionParserInterface $parser, string $baseNamespace, string $defaultException = 'Aws\\Common\\Exception\\ServiceResponseException' )`
- `public` `fromResponse ( Guzzle\Http\Message\RequestInterface $request, Guzzle\Http\Message\Response $response )`

  Returns an AWS service specific exception

- `protected` `createException ( string $className, Guzzle\Http\Message\RequestInterface $request, Guzzle\Http\Message\Response $response, array $parts )`

  Create an prepare an exception object

## Methods detail

# `public`
`__construct( `Aws\Common\Exception\Parser\ExceptionParserInterface` $parser, string $baseNamespace, string $defaultException = 'Aws\\Common\\Exception\\ServiceResponseException' )`

#### Parameters

$parser
  ``Aws\Common\Exception\Parser\ExceptionParserInterface``
  $parser Parser used to parse exceptions
$baseNamespace
  `string`
  $baseNamespace Namespace containing exceptions
$defaultException
  `string`
  $defaultException Default class to use if one is not mapped

# `public `Exception`|`Aws\Common\Exception\AwsExceptionInterface``
`fromResponse( `Guzzle\Http\Message\RequestInterface` $request, `Guzzle\Http\Message\Response` $response )`

Returns an AWS service specific exception

#### Parameters

$request
  ``Guzzle\Http\Message\RequestInterface``
  $request Unsuccessful request
$response
  ``Guzzle\Http\Message\Response``
  $response Unsuccessful response that was encountered

#### Returns

``Exception`|`Aws\Common\Exception\AwsExceptionInterface``

#### Implementation of

`Aws\Common\Exception\ExceptionFactoryInterface::fromResponse()`
# `protected `Exception``
`createException( string $className, `Guzzle\Http\Message\RequestInterface` $request, `Guzzle\Http\Message\Response` $response, array $parts )`

Create an prepare an exception object

#### Parameters

$className
  `string`
  $className Name of the class to create
$request
  ``Guzzle\Http\Message\RequestInterface``
  $request Request
$response
  ``Guzzle\Http\Message\Response``
  $response Response received
$parts
  `array`
  $parts Parsed exception data

#### Returns

``Exception``

### Magic methods summary

## Properties summary

`protected `Aws\Common\Exception\Parser\ExceptionParserInterface`` | $parser | # $parser Parser used to parse responses
`protected string` | $baseNamespace | # Base namespace containing exception classes
`protected string` | $defaultException | # Default class to instantiate if a match is not found