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

# Class UploadPartContext

An object that encapsulates the data for a Glacier upload operation

Namespace: Aws\Glacier\Model\MultipartUpload
Located at Aws/Glacier/Model/MultipartUpload/UploadPartContext.php

## Methods summary

- `public` `__construct ( int $maxSize, int $offset = 0 )`
- `public` `addData ( string $data )`

  Adds data to the context. This adds data to both the tree and chunk hashes and increases the size

- `public` `generatePart ( )`

  Finalizes the context by calculating the final hashes and generates an upload part object

- `public` `isFull ( )`

  Checks if the size of the context is the same as the maximum size

- `public` `isEmpty ( )`

  Checks if the size of the context is 0

## Methods detail

# `public`
`__construct( integer $maxSize, integer $offset = 0 )`

#### Parameters

$maxSize
  `integer`
  $maxSize Maximum allowed size of this upload context
$offset
  `integer`
  $offset The starting offset byte of the upload body

# `public mixed`
`addData( string $data )`

Adds data to the context. This adds data to both the tree and chunk hashes and increases the size

#### Parameters

$data
  `string`
  $data Data to add to the context

#### Returns

`mixed`
$this

#### Throws

``Aws\Common\Exception\LogicException``
when the context is already finalized
# `public `Aws\Glacier\Model\MultipartUpload\UploadPart``
`generatePart( )`

Finalizes the context by calculating the final hashes and generates an upload part object

#### Returns

``Aws\Glacier\Model\MultipartUpload\UploadPart``
# `public boolean`
`isFull( )`

Checks if the size of the context is the same as the maximum size

#### Returns

`boolean`
# `public boolean`
`isEmpty( )`

Checks if the size of the context is 0

#### Returns

`boolean`

### Magic methods summary

## Properties summary

`protected `Aws\Common\Hash\TreeHash`` | $treeHash | # Tree hash context of the data
`protected `Aws\Common\Hash\ChunkHash`` | $chunkHash | # Chunk hash context of the data
`protected integer` | $size | # The size (or content-length) in bytes of the upload body
`protected integer` | $offset | # The starting offset byte of the upload body
`protected integer` | $maxSize | # The maximum size of the upload in bytes
`protected `Aws\Glacier\Model\MultipartUpload\UploadPart`` | $uploadPart | # The calculated upload part