RuntimePayloadUploads
in package
FinalYes
Namespace-scoped discovery and request-local, content-addressed uploads.
Table of Contents
Constants
- COMMAND_FIELDS : array<string, array<int, string>> = ['complete_workflow' => ['result'], 'schedule_a...
- COMPLETION_HEADER : mixed = 'X-Durable-Workflow-Payload-Completion'
- COMPLETION_SCHEMA : mixed = 'durable-workflow.v2.payload-completion-context...
Properties
- $baseUri : string
-
$policies
: array<int, array{expires: int, policy: array
}> - $transport : Transport
Methods
- __construct() : mixed
- request() : array<string, mixed>
- completionContext() : string|null
- get() : mixed
- jsonSize() : int
- paths() : array<int, array<int, int|string>>
- placeholder() : array{schema: string, reference_id: string, codec: string, size_bytes: int, sha256: string}
- policy() : array{threshold_bytes: int, max_bytes: int, request_bytes: int, timeout_seconds: int, status: string, completion_context?: bool}
- replace() : void
Constants
COMMAND_FIELDS
public
array<string, array<int, string>>
COMMAND_FIELDS
= ['complete_workflow' => ['result'], 'schedule_activity' => ['arguments'], 'start_child_workflow' => ['arguments'], 'continue_as_new' => ['arguments'], 'complete_update' => ['result'], 'record_side_effect' => ['result'], 'record_local_activity' => ['arguments', 'result'], 'start_service_operation' => ['request_payload'], 'upsert_memo' => ['entries']]
COMPLETION_HEADER
private
mixed
COMPLETION_HEADER
= 'X-Durable-Workflow-Payload-Completion'
COMPLETION_SCHEMA
private
mixed
COMPLETION_SCHEMA
= 'durable-workflow.v2.payload-completion-context.v1'
Properties
$baseUri read-only
private
string
$baseUri
$policies
private
array<int, array{expires: int, policy: array}>
$policies
= []
$transport read-only
private
Transport
$transport
Methods
__construct()
public
__construct(Transport $transport, string $baseUri) : mixed
Parameters
- $transport : Transport
- $baseUri : string
request()
public
request(array<string, mixed> $body, string $method, string $path, bool $worker, array<string, string> $headers) : array<string, mixed>
Parameters
- $body : array<string, mixed>
- $method : string
- $path : string
- $worker : bool
- $headers : array<string, string>
Return values
array<string, mixed>completionContext()
private
completionContext(array<string, mixed> $body, string $path, array<int, int|string> $slot) : string|null
Parameters
- $body : array<string, mixed>
- $path : string
- $slot : array<int, int|string>
Return values
string|nullget()
private
get(mixed $value, array<int, int|string> $segments) : mixed
Parameters
- $value : mixed
- $segments : array<int, int|string>
jsonSize()
private
jsonSize(mixed $value) : int
Parameters
- $value : mixed
Return values
intpaths()
private
paths(array<string, mixed> $body, string $path, bool $worker) : array<int, array<int, int|string>>
Parameters
- $body : array<string, mixed>
- $path : string
- $worker : bool
Return values
array<int, array<int, int|string>>placeholder()
private
placeholder(array<string, mixed> &$body, array{path: list, blob: string} $payload) : array{schema: string, reference_id: string, codec: string, size_bytes: int, sha256: string}
Parameters
- $body : array<string, mixed>
-
$payload
: array{path: list
, blob: string}
Return values
array{schema: string, reference_id: string, codec: string, size_bytes: int, sha256: string}policy()
private
policy(array<string, string> $headers, bool $worker) : array{threshold_bytes: int, max_bytes: int, request_bytes: int, timeout_seconds: int, status: string, completion_context?: bool}
Parameters
- $headers : array<string, string>
- $worker : bool
Return values
array{threshold_bytes: int, max_bytes: int, request_bytes: int, timeout_seconds: int, status: string, completion_context?: bool}replace()
private
replace(array<string, mixed> &$body, array<int, int|string> $segments, array<string, mixed> $reference) : void
Parameters
- $body : array<string, mixed>
- $segments : array<int, int|string>
- $reference : array<string, mixed>