ok
Direktori : /proc/thread-self/root/home2/selectio/www/fms-worksuite/vendor/sentry/sentry/src/ |
Current File : //proc/thread-self/root/home2/selectio/www/fms-worksuite/vendor/sentry/sentry/src/EventHint.php |
<?php declare(strict_types=1); namespace Sentry; /** * This class represents hints on how to process an event. */ final class EventHint { /** * The original exception to add to the event. * * @var \Throwable|null */ public $exception; /** * An object describing the mechanism of the original exception. * * @var ExceptionMechanism|null */ public $mechanism; /** * The stacktrace to set on the event. * * @var Stacktrace|null */ public $stacktrace; /** * Any extra data that might be needed to process the event. * * @var array<string, mixed> */ public $extra = []; /** * Create a EventHint instance from an array of values. * * @psalm-param array{ * exception?: \Throwable|null, * mechanism?: ExceptionMechanism|null, * stacktrace?: Stacktrace|null, * extra?: array<string, mixed> * } $hintData */ public static function fromArray(array $hintData): self { $hint = new self(); $exception = $hintData['exception'] ?? null; $mechanism = $hintData['mechanism'] ?? null; $stacktrace = $hintData['stacktrace'] ?? null; $extra = $hintData['extra'] ?? []; if (null !== $exception && !$exception instanceof \Throwable) { throw new \InvalidArgumentException(sprintf('The value of the "exception" field must be an instance of a class implementing the "%s" interface. Got: "%s".', \Throwable::class, get_debug_type($exception))); } if (null !== $mechanism && !$mechanism instanceof ExceptionMechanism) { throw new \InvalidArgumentException(sprintf('The value of the "mechanism" field must be an instance of the "%s" class. Got: "%s".', ExceptionMechanism::class, get_debug_type($mechanism))); } if (null !== $stacktrace && !$stacktrace instanceof Stacktrace) { throw new \InvalidArgumentException(sprintf('The value of the "stacktrace" field must be an instance of the "%s" class. Got: "%s".', Stacktrace::class, get_debug_type($stacktrace))); } if (!\is_array($extra)) { throw new \InvalidArgumentException(sprintf('The value of the "extra" field must be an array. Got: "%s".', get_debug_type($extra))); } $hint->exception = $exception; $hint->mechanism = $mechanism; $hint->stacktrace = $stacktrace; $hint->extra = $extra; return $hint; } }