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

# Class OperationCommand

A command that creates requests based on `Guzzle\Service\Description\OperationInterface` objects, and if the matching operation uses a service description model in the responseClass attribute, then this command will marshal the response into an associative array based on the JSON schema of the model.

  Guzzle\Common\Collection implements ArrayAccess, IteratorAggregate, Countable, Guzzle\Common\ToArrayInterface
  Guzzle\Service\Command\AbstractCommand implements Guzzle\Service\Command\CommandInterface
  Guzzle\Service\Command\OperationCommand

### Direct known subclasses

`Aws\Common\Command\JsonCommand`, `Aws\Common\Command\QueryCommand`, `Aws\S3\Command\S3Command`

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

## Methods summary

- `public` `setResponseParser ( Guzzle\Service\Command\ResponseParserInterface $parser )`

  Set the response parser used with the command

- `public` `setRequestSerializer ( Guzzle\Service\Command\RequestSerializerInterface $serializer )`

  Set the request serializer used with the command

- `public` `getRequestSerializer ( )`

  Get the request serializer used with the command

- `public` `getResponseParser ( )`

  Get the response parser used for the operation

- `protected` `build ( )`

  Create the request object that will carry out the command

- `protected` `process ( )`

  Create the result of the command after the request has been completed. Override this method in subclasses to customize this behavior

## Methods detail

# `public `Guzzle\Service\Command\OperationCommand``
`setResponseParser( `Guzzle\Service\Command\ResponseParserInterface` $parser )`

Set the response parser used with the command

#### Parameters

$parser
  ``Guzzle\Service\Command\ResponseParserInterface``
  $parser Response parser

#### Returns

``Guzzle\Service\Command\OperationCommand``
# `public `Guzzle\Service\Command\OperationCommand``
`setRequestSerializer( `Guzzle\Service\Command\RequestSerializerInterface` $serializer )`

Set the request serializer used with the command

#### Parameters

$serializer
  ``Guzzle\Service\Command\RequestSerializerInterface``
  $serializer Request serializer

#### Returns

``Guzzle\Service\Command\OperationCommand``
# `public `Guzzle\Service\Command\RequestSerializerInterface``
`getRequestSerializer( )`

Get the request serializer used with the command

#### Returns

``Guzzle\Service\Command\RequestSerializerInterface``
# `public `Guzzle\Service\Command\ResponseParserInterface``
`getResponseParser( )`

Get the response parser used for the operation

#### Returns

``Guzzle\Service\Command\ResponseParserInterface``
# `protected`
`build( )`

Create the request object that will carry out the command

# `protected`
`process( )`

Create the result of the command after the request has been completed. Override this method in subclasses to customize this behavior

#### Overrides

`Guzzle\Service\Command\AbstractCommand::process`

### Methods inherited from Guzzle\Service\Command\AbstractCommand

`__clone()`, `__construct()`, `__invoke()`, `createOperation()`, `execute()`, `getClient()`, `getName()`, `getOperation()`, `getRequest()`, `getRequestHeaders()`, `getResponse()`, `getResult()`, `getValidationErrors()`, `getValidator()`, `init()`, `isExecuted()`, `isPrepared()`, `prepare()`, `setClient()`, `setOnComplete()`, `setResult()`, `setValidator()`, `validate()`

### Methods inherited from Guzzle\Common\Collection

`add()`, `clear()`, `count()`, `filter()`, `fromConfig()`, `get()`, `getAll()`, `getIterator()`, `getKeys()`, `getPath()`, `hasKey()`, `hasValue()`, `keySearch()`, `map()`, `merge()`, `offsetExists()`, `offsetGet()`, `offsetSet()`, `offsetUnset()`, `overwriteWith()`, `remove()`, `replace()`, `set()`, `setPath()`, `toArray()`

### Magic methods summary

## Constants summary

### Constants inherited from Guzzle\Service\Command\AbstractCommand

`DISABLE_VALIDATION`, `HEADERS_OPTION`, `HIDDEN_PARAMS`, `ON_COMPLETE`, `REQUEST_OPTIONS`, `RESPONSE_BODY`, `RESPONSE_PROCESSING`, `TYPE_MODEL`, `TYPE_NO_TRANSLATION`, `TYPE_RAW`

## Properties summary

`protected `Guzzle\Service\Command\RequestSerializerInterface`` | $requestSerializer | #
`protected `Guzzle\Service\Command\ResponseParserInterface`` | $responseParser | # Response parser

### Properties inherited from Guzzle\Service\Command\AbstractCommand

`$client`, `$onComplete`, `$operation`, `$request`, `$result`, `$validator`

### Properties inherited from Guzzle\Common\Collection

`$data`