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

# Class UploadSyncBuilder

  Aws\S3\Sync\AbstractSyncBuilder
  Aws\S3\Sync\UploadSyncBuilder

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

## Methods summary

- `public` `uploadFromDirectory ( string $path )`

  Set the path that contains files to recursively upload to Amazon S3

- `public` `uploadFromGlob ( string $glob )`

  Set a glob expression that will match files to upload to Amazon S3

- `public` `setAcl ( string $acl )`

  Set a canned ACL to apply to each uploaded object

- `public` `setAcp ( Aws\S3\Model\Acp $acp )`

  Set an Access Control Policy to apply to each uploaded object

- `public` `setMultipartUploadSize ( int $size )`

  Set the multipart upload size threshold. When the size of a file exceeds this value, the file will be uploaded using a multipart upload.

- `protected` `specificBuild ( )`

  Hook to implement in subclasses

- `protected` `addCustomParamListener ( Guzzle\Common\HasDispatcherInterface $sync )`

  Add the custom param listener to a transfer object

- `protected` `getTargetIterator ( )`
- `protected` `getDefaultSourceConverter ( )`
- `protected` `getDefaultTargetConverter ( )`
- `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`
`uploadFromDirectory( string $path )`

Set the path that contains files to recursively upload to Amazon S3

#### Parameters

$path
  `string`
  $path Path that contains files to upload

#### Returns

`mixed`
$this
# `public mixed`
`uploadFromGlob( string $glob )`

Set a glob expression that will match files to upload to Amazon S3

#### Parameters

$glob
  `string`
  $glob Glob expression

#### Returns

`mixed`
$this

#### Link

http://www.php.net/manual/en/function.glob.php
# `public mixed`
`setAcl( string $acl )`

Set a canned ACL to apply to each uploaded object

#### Parameters

$acl
  `string`
  $acl Canned ACL for each upload

#### Returns

`mixed`
$this
# `public mixed`
`setAcp( `Aws\S3\Model\Acp` $acp )`

Set an Access Control Policy to apply to each uploaded object

#### Parameters

$acp
  ``Aws\S3\Model\Acp``
  $acp Access control policy

#### Returns

`mixed`
$this
# `public mixed`
`setMultipartUploadSize( integer $size )`

Set the multipart upload size threshold. When the size of a file exceeds this value, the file will be uploaded using a multipart upload.

#### Parameters

$size
  `integer`
  $size Size threshold

#### Returns

`mixed`
$this
# `protected `Aws\S3\Sync\AbstractSync``
`specificBuild( )`

Hook to implement in subclasses

#### Returns

``Aws\S3\Sync\AbstractSync``
# `protected`
`addCustomParamListener( `Guzzle\Common\HasDispatcherInterface` $sync )`

Add the custom param listener to a transfer object

#### Parameters

$sync
  ``Guzzle\Common\HasDispatcherInterface``
  $sync

#### Overrides

`Aws\S3\Sync\AbstractSyncBuilder::addCustomParamListener`
# `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`
`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

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

### Magic methods summary

## Properties summary

`protected string|`Aws\S3\Model\Acp`` | $acp | # Access control policy to set on each object
`protected integer` | $multipartUploadSize | #

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

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