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

# Class CompositeResourceIteratorFactory

Factory that utilizes multiple factories for creating iterators

  Guzzle\Service\Resource\CompositeResourceIteratorFactory implements Guzzle\Service\Resource\ResourceIteratorFactoryInterface

Namespace: Guzzle\Service\Resource
Located at Guzzle/Service/Resource/CompositeResourceIteratorFactory.php

## Methods summary

- `public` `__construct ( array $factories )`
- `public` `build ( Guzzle\Service\Command\CommandInterface $command, array $options = array() )`

  Create a resource iterator

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

  Check if the factory can create an iterator

- `public` `addFactory ( Guzzle\Service\Resource\ResourceIteratorFactoryInterface $factory )`

  Add a factory to the composite factory

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

  Get the factory that matches the command object

## Methods detail

# `public`
`__construct( array $factories )`

#### Parameters

$factories
  `array`
  $factories Array of factories used to instantiate iterators

# `public `Guzzle\Service\Resource\ResourceIteratorInterface``
`build( `Guzzle\Service\Command\CommandInterface` $command, array $options = array() )`

Create a resource iterator

#### Parameters

$command
  ``Guzzle\Service\Command\CommandInterface``
  $command Command to create an iterator for
$options
  `array`
  $options Iterator options that are exposed as data.

#### Returns

``Guzzle\Service\Resource\ResourceIteratorInterface``

#### Implementation of

`Guzzle\Service\Resource\ResourceIteratorFactoryInterface::build()`
# `public boolean`
`canBuild( `Guzzle\Service\Command\CommandInterface` $command )`

Check if the factory can create an iterator

#### Parameters

$command
  ``Guzzle\Service\Command\CommandInterface``
  $command Command to create an iterator for

#### Returns

`boolean`

#### Implementation of

`Guzzle\Service\Resource\ResourceIteratorFactoryInterface::canBuild()`
# `public `Guzzle\Service\Resource\CompositeResourceIteratorFactory``
`addFactory( `Guzzle\Service\Resource\ResourceIteratorFactoryInterface` $factory )`

Add a factory to the composite factory

#### Parameters

$factory
  ``Guzzle\Service\Resource\ResourceIteratorFactoryInterface``
  $factory Factory to add

#### Returns

``Guzzle\Service\Resource\CompositeResourceIteratorFactory``
# `protected `Guzzle\Service\Resource\ResourceIteratorFactoryInterface`|boolean`
`getFactory( `Guzzle\Service\Command\CommandInterface` $command )`

Get the factory that matches the command object

#### Parameters

$command
  ``Guzzle\Service\Command\CommandInterface``
  $command Command retrieving the iterator for

#### Returns

``Guzzle\Service\Resource\ResourceIteratorFactoryInterface`|boolean`

### Magic methods summary

## Properties summary

`protected array` | $factories | # Array of factories