%PDF- %PDF-
Direktori : /home/graphicd/public_html/vebto/vendor/gliterd/backblaze-b2/src/ |
Current File : /home/graphicd/public_html/vebto/vendor/gliterd/backblaze-b2/src/ErrorHandler.php |
<?php namespace BackblazeB2; use BackblazeB2\Exceptions\B2Exception; use BackblazeB2\Exceptions\BadJsonException; use BackblazeB2\Exceptions\BadValueException; use BackblazeB2\Exceptions\BucketAlreadyExistsException; use BackblazeB2\Exceptions\BucketNotEmptyException; use BackblazeB2\Exceptions\FileNotPresentException; use BackblazeB2\Exceptions\NotFoundException; use BackblazeB2\Exceptions\UnauthorizedAccessException; use GuzzleHttp\Psr7\Response; class ErrorHandler { protected static $mappings = [ 'bad_json' => BadJsonException::class, 'bad_value' => BadValueException::class, 'duplicate_bucket_name' => BucketAlreadyExistsException::class, 'not_found' => NotFoundException::class, 'file_not_present' => FileNotPresentException::class, 'cannot_delete_non_empty_bucket' => BucketNotEmptyException::class, 'unauthorized' => UnauthorizedAccessException::class, ]; /** * @param Response $response * * @throws B2Exception */ public static function handleErrorResponse(Response $response) { $responseJson = json_decode($response->getBody(), true); if (isset(self::$mappings[$responseJson['code']])) { $exceptionClass = self::$mappings[$responseJson['code']]; } else { // We don't have an exception mapped to this response error, throw generic exception $exceptionClass = B2Exception::class; } throw new $exceptionClass('Received error from B2: '.$responseJson['message']); } }