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

# Class DefaultRequestSerializer

Default request serializer that transforms command options and operation parameters into a request

  Guzzle\Service\Command\DefaultRequestSerializer implements Guzzle\Service\Command\RequestSerializerInterface

Namespace: Guzzle\Service\Command
Located at Guzzle/Service/Command/DefaultRequestSerializer.php

## Methods summary

- `public static` `getInstance ( )`
- `public` `__construct ( Guzzle\Service\Command\LocationVisitor\VisitorFlyweight $factory )`
- `public` `addVisitor ( string $location, Guzzle\Service\Command\LocationVisitor\Request\RequestVisitorInterface $visitor )`

  Add a location visitor to the serializer

- `public` `prepare ( Guzzle\Service\Command\CommandInterface $command )`

  Create a request for a command

- `protected` `prepareAdditionalParameters ( Guzzle\Service\Description\OperationInterface $operation, Guzzle\Service\Command\CommandInterface $command, Guzzle\Http\Message\RequestInterface $request, Guzzle\Service\Description\Parameter $additional )`

  Serialize additional parameters

- `protected` `createRequest ( Guzzle\Service\Command\CommandInterface $command )`

  Create a request for the command and operation

## Methods detail

# `public static `Guzzle\Service\Command\DefaultRequestSerializer``
`getInstance( )`

#### Returns

``Guzzle\Service\Command\DefaultRequestSerializer``

#### CodeCoverageIgnore

# `public`
`__construct( `Guzzle\Service\Command\LocationVisitor\VisitorFlyweight` $factory )`

#### Parameters

$factory
  ``Guzzle\Service\Command\LocationVisitor\VisitorFlyweight``
  $factory Factory to use when creating visitors

# `public `Guzzle\Service\Command\DefaultRequestSerializer``
`addVisitor( string $location, `Guzzle\Service\Command\LocationVisitor\Request\RequestVisitorInterface` $visitor )`

Add a location visitor to the serializer

#### Parameters

$location
  `string`
  $location Location to associate with the visitor
$visitor
  ``Guzzle\Service\Command\LocationVisitor\Request\RequestVisitorInterface``
  $visitor Visitor to attach

#### Returns

``Guzzle\Service\Command\DefaultRequestSerializer``
# `public `Guzzle\Http\Message\RequestInterface``
`prepare( `Guzzle\Service\Command\CommandInterface` $command )`

Create a request for a command

#### Parameters

$command
  ``Guzzle\Service\Command\CommandInterface``
  $command Command that will own the request

#### Returns

``Guzzle\Http\Message\RequestInterface``

#### Implementation of

`Guzzle\Service\Command\RequestSerializerInterface::prepare()`
# `protected null|`Guzzle\Service\Command\LocationVisitor\Request\RequestVisitorInterface``
`prepareAdditionalParameters( `Guzzle\Service\Description\OperationInterface` $operation, `Guzzle\Service\Command\CommandInterface` $command, `Guzzle\Http\Message\RequestInterface` $request, `Guzzle\Service\Description\Parameter` $additional )`

Serialize additional parameters

#### Parameters

$operation
  ``Guzzle\Service\Description\OperationInterface``
  $operation Operation that owns the command
$command
  ``Guzzle\Service\Command\CommandInterface``
  $command Command to prepare
$request
  ``Guzzle\Http\Message\RequestInterface``
  $request Request to serialize
$additional
  ``Guzzle\Service\Description\Parameter``
  $additional Additional parameters

#### Returns

`null|`Guzzle\Service\Command\LocationVisitor\Request\RequestVisitorInterface``
# `protected `Guzzle\Http\Message\RequestInterface``
`createRequest( `Guzzle\Service\Command\CommandInterface` $command )`

Create a request for the command and operation

#### Parameters

$command
  ``Guzzle\Service\Command\CommandInterface``
  $command Command to create a request for

#### Returns

``Guzzle\Http\Message\RequestInterface``

### Magic methods summary

## Properties summary

`protected `Guzzle\Service\Command\LocationVisitor\VisitorFlyweight`` | $factory | # $factory Visitor factory
`protected static `Guzzle\Service\Command\DefaultRequestSerializer`` | $instance | #