���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/st2/vendor/google/gax/src/ApiCore/ |
<?php /* * Copyright 2016, Google Inc. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following disclaimer * in the documentation and/or other materials provided with the * distribution. * * Neither the name of Google Inc. nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ namespace Google\ApiCore; use Exception; /** * Represents an exception thrown during an RPC. */ class ApiException extends Exception { private $status; private $metadata; private $basicMessage; /** * ApiException constructor. * @param string $message * @param int $code * @param string $status * @param array $optionalArgs { * @type Exception|null $previous * @type array|null $metadata * @type string|null $basicMessage * } */ public function __construct( $message, $code, $status, array $optionalArgs = [] ) { $optionalArgs += [ 'previous' => null, 'metadata' => null, 'basicMessage' => $message, ]; parent::__construct($message, $code, $optionalArgs['previous']); $this->status = $status; $this->metadata = $optionalArgs['metadata']; $this->basicMessage = $optionalArgs['basicMessage']; } public function getStatus() { return $this->status; } /** * @param \stdClass $status * @return ApiException */ public static function createFromStdClass($status) { $basicMessage = $status->details; $code = $status->code; $metadata = property_exists($status, 'metadata') ? $status->metadata : null; return self::createFromApiResponse($basicMessage, $code, $metadata); } /** * @param string $basicMessage * @param int $rpcCode * @param string|null $metadata * @return ApiException */ public static function createFromApiResponse($basicMessage, $rpcCode, $metadata = null) { $rpcStatus = ApiStatus::statusFromRpcCode($rpcCode); $messageData = [ 'message' => $basicMessage, 'code' => $rpcCode, 'status' => $rpcStatus, 'details' => Serializer::decodeMetadata($metadata) ]; $message = json_encode($messageData, JSON_PRETTY_PRINT); return new ApiException($message, $rpcCode, $rpcStatus, [ 'metadata' => $metadata, 'basicMessage' => $basicMessage, ]); } /** * @return null|string */ public function getBasicMessage() { return $this->basicMessage; } /** * @return mixed[] */ public function getMetadata() { return $this->metadata; } /** * String representation of ApiException * @return string */ public function __toString() { return __CLASS__ . ": $this->message\n"; } }