public static function applyDocFilters(array $api, array $docs)
{
// Add the SourceFile parameter.
$docs['shapes']['SourceFile']['base'] = 'The path to a file on disk to use instead of the body parameter.';
$api['shapes']['SourceFile'] = ['type' => 'string'];
$api['shapes']['UploadArchiveInput']['members']['sourceFile'] = ['shape' => 'SourceFile'];
$api['shapes']['UploadMultipartPartInput']['members']['sourceFile'] = ['shape' => 'SourceFile'];
// Add the ContentSHA256 parameter.
$docs['shapes']['ContentSHA256']['base'] = 'A SHA256 hash of the content of the request body';
$api['shapes']['ContentSHA256'] = ['type' => 'string'];
$api['shapes']['UploadArchiveInput']['members']['contentSHA256'] = ['shape' => 'ContentSHA256'];
$api['shapes']['UploadMultipartPartInput']['members']['contentSHA256'] = ['shape' => 'ContentSHA256'];
// Add information about "checksum" and "ContentSHA256" being optional.
$optional = '<div class="alert alert-info">The SDK will compute this value ' . 'for you on your behalf if it is not supplied.</div>';
$docs['shapes']['checksum']['append'] = $optional;
$docs['shapes']['ContentSHA256']['append'] = $optional;
// Make "accountId" optional for all operations.
foreach ($api['operations'] as $operation) {
$inputShape =& $api['shapes'][$operation['input']['shape']];
$accountIdIndex = array_search('accountId', $inputShape['required']);
unset($inputShape['required'][$accountIdIndex]);
}
// Add information about the default value for "accountId".
$optional = '<div class="alert alert-info">The SDK will set this value to "-" by default.</div>';
foreach ($docs['shapes']['string']['refs'] as $name => &$ref) {
if (strpos($name, 'accountId')) {
$ref .= $optional;
}
}
return [new Service($api, ApiProvider::defaultProvider()), new DocModel($docs)];
}