Differential D16460 Diff 39599 src/applications/diffusion/conduit/DiffusionRawDiffQueryConduitAPIMethod.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/diffusion/conduit/DiffusionRawDiffQueryConduitAPIMethod.php
| Show All 15 Lines | final class DiffusionRawDiffQueryConduitAPIMethod | ||||
| protected function defineReturnType() { | protected function defineReturnType() { | ||||
| return 'string'; | return 'string'; | ||||
| } | } | ||||
| protected function defineCustomParamTypes() { | protected function defineCustomParamTypes() { | ||||
| return array( | return array( | ||||
| 'commit' => 'required string', | 'commit' => 'required string', | ||||
| 'path' => 'optional string', | 'path' => 'optional string', | ||||
| 'timeout' => 'optional int', | |||||
| 'byteLimit' => 'optional int', | |||||
| 'linesOfContext' => 'optional int', | 'linesOfContext' => 'optional int', | ||||
| 'againstCommit' => 'optional string', | 'againstCommit' => 'optional string', | ||||
| ); | ) + DiffusionFileFutureQuery::getConduitParameters(); | ||||
| } | } | ||||
| protected function getResult(ConduitAPIRequest $request) { | protected function getResult(ConduitAPIRequest $request) { | ||||
| $drequest = $this->getDiffusionRequest(); | $drequest = $this->getDiffusionRequest(); | ||||
| $raw_query = DiffusionRawDiffQuery::newFromDiffusionRequest($drequest); | $query = DiffusionRawDiffQuery::newFromDiffusionRequest($drequest); | ||||
| $timeout = $request->getValue('timeout'); | |||||
| if ($timeout !== null) { | |||||
| $raw_query->setTimeout($timeout); | |||||
| } | |||||
| $lines_of_context = $request->getValue('linesOfContext'); | $lines_of_context = $request->getValue('linesOfContext'); | ||||
| if ($lines_of_context !== null) { | if ($lines_of_context !== null) { | ||||
| $raw_query->setLinesOfContext($lines_of_context); | $query->setLinesOfContext($lines_of_context); | ||||
| } | } | ||||
| $against_commit = $request->getValue('againstCommit'); | $against_commit = $request->getValue('againstCommit'); | ||||
| if ($against_commit !== null) { | if ($against_commit !== null) { | ||||
| $raw_query->setAgainstCommit($against_commit); | $query->setAgainstCommit($against_commit); | ||||
| } | |||||
| $byte_limit = $request->getValue('byteLimit'); | |||||
| if ($byte_limit !== null) { | |||||
| $raw_query->setByteLimit($byte_limit); | |||||
| } | } | ||||
| return $raw_query->loadRawDiff(); | return $query->respondToConduitRequest($request); | ||||
| } | } | ||||
| } | } | ||||