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

# Class DownloadSyncBuilder

  Aws\S3\Sync\AbstractSyncBuilder
  Aws\S3\Sync\DownloadSyncBuilder

Namespace: Aws\S3\Sync
Located at Aws/S3/Sync/DownloadSyncBuilder.php

## Methods summary

- `public` `setDirectory ( string $directory )`

  Set the directory where the objects from be downloaded to

- `public` `allowResumableDownloads ( )`

  Call this function to allow partial downloads to be resumed if the download was previously interrupted

- `protected` `specificBuild ( )`

  Hook to implement in subclasses

- `protected` `getTargetIterator ( )`
- `protected` `getDefaultSourceConverter ( )`
- `protected` `getDefaultTargetConverter ( )`
- `protected` `assertFileIteratorSet ( )`

  Ensure that the base file iterator has been provided

- `protected` `addDebugListener ( Aws\S3\Sync\AbstractSync $sync, resource $resource )`

  Add a listener to the sync object to output debug information while transferring

## Methods detail

# `public mixed`
`setDirectory( string $directory )`

Set the directory where the objects from be downloaded to

#### Parameters

$directory
  `string`
  $directory Directory

#### Returns

`mixed`
$this
# `public `Aws\S3\Sync\DownloadSyncBuilder``
`allowResumableDownloads( )`

Call this function to allow partial downloads to be resumed if the download was previously interrupted

#### Returns

``Aws\S3\Sync\DownloadSyncBuilder``
# `protected `Aws\S3\Sync\AbstractSync``
`specificBuild( )`

Hook to implement in subclasses

#### Returns

``Aws\S3\Sync\AbstractSync``
# `protected `Iterator``
`getTargetIterator( )`

#### Returns

``Iterator``
# `protected `Aws\S3\Sync\FilenameConverterInterface``
`getDefaultSourceConverter( )`

#### Returns

``Aws\S3\Sync\FilenameConverterInterface``
# `protected `Aws\S3\Sync\FilenameConverterInterface``
`getDefaultTargetConverter( )`

#### Returns

``Aws\S3\Sync\FilenameConverterInterface``
# `protected`
`assertFileIteratorSet( )`

Ensure that the base file iterator has been provided

#### Throws

``Aws\Common\Exception\RuntimeException``

#### Overrides

`Aws\S3\Sync\AbstractSyncBuilder::assertFileIteratorSet`
# `protected`
`addDebugListener( `Aws\S3\Sync\AbstractSync` $sync, resource $resource )`

Add a listener to the sync object to output debug information while transferring

#### Parameters

$sync
  ``Aws\S3\Sync\AbstractSync``
  $sync Sync object to listen to
$resource
  `resource`
  $resource Where to write debug messages

### Methods inherited from Aws\S3\Sync\AbstractSyncBuilder

`addCustomParamListener()`, `addRegexFilter()`, `build()`, `createS3Iterator()`, `enableDebugOutput()`, `filterIterator()`, `force()`, `getInstance()`, `setBaseDir()`, `setBucket()`, `setClient()`, `setConcurrency()`, `setDelimiter()`, `setKeyPrefix()`, `setOperationParams()`, `setSourceFilenameConverter()`, `setSourceIterator()`, `setTargetFilenameConverter()`, `validateRequirements()`

### Magic methods summary

## Properties summary

`protected boolean` | $resumable | #
`protected string` | $directory | #
`protected integer` | $concurrency | # Number of files that can be transferred concurrently

### Properties inherited from Aws\S3\Sync\AbstractSyncBuilder

`$baseDir`, `$bucket`, `$client`, `$debug`, `$delimiter`, `$forcing`, `$keyPrefix`, `$params`, `$sourceConverter`, `$sourceIterator`, `$targetConverter`