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

# Interface CommandInterface

A command object that contains parameters that can be modified and accessed like an array and turned into an array

  Guzzle\Service\Command\CommandInterface implements ArrayAccess, Guzzle\Common\ToArrayInterface

### Direct known implementers

`Guzzle\Service\Command\AbstractCommand`

### Indirect known implementers

`Aws\Common\Command\JsonCommand`, `Aws\Common\Command\QueryCommand`, `Aws\S3\Command\S3Command`, `Guzzle\Service\Command\ClosureCommand`, `Guzzle\Service\Command\OperationCommand`

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

## Methods summary

- `public` `getName ( )`

  Get the short form name of the command

- `public` `getOperation ( )`

  Get the API operation information about the command

- `public` `execute ( )`

  Execute the command and return the result

- `public` `getClient ( )`

  Get the client object that will execute the command

- `public` `setClient ( Guzzle\Service\ClientInterface $client )`

  Set the client object that will execute the command

- `public` `getRequest ( )`

  Get the request object associated with the command

- `public` `getResponse ( )`

  Get the response object associated with the command

- `public` `getResult ( )`

  Get the result of the command

- `public` `setResult ( mixed $result )`

  Set the result of the command

- `public` `isPrepared ( )`

  Returns TRUE if the command has been prepared for executing

- `public` `isExecuted ( )`

  Returns TRUE if the command has been executed

- `public` `prepare ( )`

  Prepare the command for executing and create a request object.

- `public` `getRequestHeaders ( )`

  Get the object that manages the request headers that will be set on any outbound requests from the command

- `public` `setOnComplete ( mixed $callable )`

  Specify a callable to execute when the command completes

## Methods detail

# `public string`
`getName( )`

Get the short form name of the command

#### Returns

`string`
# `public `Guzzle\Service\Description\OperationInterface``
`getOperation( )`

Get the API operation information about the command

#### Returns

``Guzzle\Service\Description\OperationInterface``
# `public mixed`
`execute( )`

Execute the command and return the result

#### Returns

`mixed`
Returns the result of `Guzzle\Service\Command\CommandInterface::execute()`

#### Throws

``Guzzle\Service\Exception\CommandException``
if a client has not been associated with the command
# `public `Guzzle\Service\ClientInterface`|null`
`getClient( )`

Get the client object that will execute the command

#### Returns

``Guzzle\Service\ClientInterface`|null`
# `public `Guzzle\Service\Command\CommandInterface``
`setClient( `Guzzle\Service\ClientInterface` $client )`

Set the client object that will execute the command

#### Parameters

$client
  ``Guzzle\Service\ClientInterface``
  $client The client object that will execute the command

#### Returns

``Guzzle\Service\Command\CommandInterface``
# `public `Guzzle\Http\Message\RequestInterface``
`getRequest( )`

Get the request object associated with the command

#### Returns

``Guzzle\Http\Message\RequestInterface``

#### Throws

``Guzzle\Service\Exception\CommandException``
if the command has not been executed
# `public `Guzzle\Http\Message\Response``
`getResponse( )`

Get the response object associated with the command

#### Returns

``Guzzle\Http\Message\Response``

#### Throws

``Guzzle\Service\Exception\CommandException``
if the command has not been executed
# `public `Guzzle\Http\Message\Response``
`getResult( )`

Get the result of the command

#### Returns

``Guzzle\Http\Message\Response``
By default, commands return a Response object unless overridden in a subclass

#### Throws

``Guzzle\Service\Exception\CommandException``
if the command has not been executed
# `public `Guzzle\Service\Command\CommandInterface``
`setResult( mixed $result )`

Set the result of the command

#### Parameters

$result
  `mixed`
  $result Result to set

#### Returns

``Guzzle\Service\Command\CommandInterface``
# `public boolean`
`isPrepared( )`

Returns TRUE if the command has been prepared for executing

#### Returns

`boolean`
# `public boolean`
`isExecuted( )`

Returns TRUE if the command has been executed

#### Returns

`boolean`
# `public `Guzzle\Http\Message\RequestInterface``
`prepare( )`

Prepare the command for executing and create a request object.

#### Returns

``Guzzle\Http\Message\RequestInterface``
Returns the generated request

#### Throws

``Guzzle\Service\Exception\CommandException``
if a client object has not been set previously or in the prepare()
# `public `Guzzle\Common\Collection``
`getRequestHeaders( )`

Get the object that manages the request headers that will be set on any outbound requests from the command

#### Returns

``Guzzle\Common\Collection``
# `public `Guzzle\Service\Command\CommandInterface``
`setOnComplete( mixed $callable )`

Specify a callable to execute when the command completes

#### Parameters

$callable
  `mixed`
  $callable Callable to execute when the command completes. The callable must accept a `Guzzle\Service\Command\CommandInterface` object as the only argument.

#### Returns

``Guzzle\Service\Command\CommandInterface``

#### Throws

``Guzzle\Common\Exception\InvalidArgumentException``

### Methods inherited from ArrayAccess

`offsetExists()`, `offsetGet()`, `offsetSet()`, `offsetUnset()`

### Methods inherited from Guzzle\Common\ToArrayInterface

`toArray()`

### Magic methods summary