# Class ContainerMigration

Class responsible for migrating the contents of one container to another

Namespace: OpenCloud\ObjectStore\Upload
Package: OpenCloud\ObjectStore\Upload
Located at OpenCloud/ObjectStore/Upload/ContainerMigration.php

Methods summary
`public static `OpenCloud\ObjectStore\Upload\ContainerMigration`` | # `factory( `OpenCloud\ObjectStore\Resource\Container` $old, `OpenCloud\ObjectStore\Resource\Container` $new, array $options = array() )` #### Parameters $old ``OpenCloud\ObjectStore\Resource\Container`` $old Source container $new ``OpenCloud\ObjectStore\Resource\Container`` $new Target container $options `array` $options Options that configure process #### Returns ``OpenCloud\ObjectStore\Upload\ContainerMigration``
`public` | # `setOldContainer( `OpenCloud\ObjectStore\Resource\Container` $old )` #### Parameters $old ``OpenCloud\ObjectStore\Resource\Container`` $old
`public `OpenCloud\ObjectStore\Resource\Container`` | # `getOldContainer( )` #### Returns ``OpenCloud\ObjectStore\Resource\Container``
`public` | # `setNewContainer( `OpenCloud\ObjectStore\Resource\Container` $new )` #### Parameters $new ``OpenCloud\ObjectStore\Resource\Container`` $new
`public `OpenCloud\ObjectStore\Resource\Container`` | # `getNewContainer( )` #### Returns ``OpenCloud\ObjectStore\Resource\Container``
`public` | # `setOptions( array $options )` #### Parameters $options `array` $options
`public Guzzle\Common\Collection` | # `getOptions( )` #### Returns `Guzzle\Common\Collection`
`public` | # `setupReadQueue( )` Set the read queue as a \Guzzle\Batch\Batch queue using the \Guzzle\Batch\BatchBuilder Set the read queue as a \Guzzle\Batch\Batch queue using the \Guzzle\Batch\BatchBuilder
`public` | # `setupWriteQueue( )` Set the write queue as a \Guzzle\Batch\Batch queue using the \Guzzle\Batch\BatchBuilder Set the write queue as a \Guzzle\Batch\Batch queue using the \Guzzle\Batch\BatchBuilder
`protected` | # `enqueueGetRequests( )` Create a collection of files to be migrated and add them to the read queue Create a collection of files to be migrated and add them to the read queue
`protected array` | # `sendGetRequests( )` Send the read queue (in order to gather more information about individual files) Send the read queue (in order to gather more information about individual files) #### Returns `array` Responses
`protected Guzzle\Http\Message\EntityEnclosingRequestInterface` | # `createPutRequest( Guzzle\Http\Message\Response $response )` Create a tailored PUT request for each file Create a tailored PUT request for each file #### Parameters $response `Guzzle\Http\Message\Response` $response #### Returns `Guzzle\Http\Message\EntityEnclosingRequestInterface`
`public array` | # `transfer( )` Initiate the transfer process Initiate the transfer process #### Returns `array` PUT responses

Properties summary
`protected Guzzle\Batch\Batch` | $readQueue | `` | #
`protected Guzzle\Batch\Batch` | $writeQueue | `` | #
`protected `OpenCloud\ObjectStore\Resource\Container`` | $oldContainer | `` | #
`protected `OpenCloud\ObjectStore\Resource\Container`` | $newContainer | `` | #
`protected Guzzle\Common\Collection` | $options | `array()` | #
`protected array` | $defaults | `array( 'read.batchLimit' => 1000, 'read.pageLimit' => 10000, 'write.batchLimit' => 100 )` | #