'phid', ); } protected function defineReturnType() { return 'list'; } protected function defineErrorTypes() { return array( 'ERR-BAD-PHID' => pht('Must pass a PHID.'), ); } protected function execute(ConduitAPIRequest $request) { $viewer = $request->getUser(); $file_phid = $request->getValue('filePHID'); if (!$file_phid) { throw new ConduitException('ERR-BAD-PHID'); } $file = $this->loadFileByPHID($viewer, $file_phid); $chunks = $this->loadFileChunks($viewer, $file); $results = array(); foreach ($chunks as $chunk) { $results[] = array( 'byteStart' => $chunk->getByteStart(), 'byteEnd' => $chunk->getByteEnd(), 'complete' => (bool)$chunk->getDataFilePHID(), ); } return $results; } }