temporalpayloadruntime

package
v0.0.0-...-804b954 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 13, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Overview

Package temporalpayloadruntime owns the sole runtime Temporal client and worker converter factory.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is a Temporal client created by Factory with the runtime-owned converter.

func (*Client) Close

func (client *Client) Close()

Close closes the owned Temporal client.

func (*Client) ExecuteWorkflow

func (client *Client) ExecuteWorkflow(ctx context.Context, options client.StartWorkflowOptions, workflow any, arguments ...any) (client.WorkflowRun, error)

ExecuteWorkflow starts one private runtime workflow through the configured client.

func (*Client) SignalWithStartWorkflow

func (owned *Client) SignalWithStartWorkflow(ctx context.Context, workflowID, signal string, argument any, options client.StartWorkflowOptions, workflow any, arguments ...any) (client.WorkflowRun, error)

SignalWithStartWorkflow atomically reaches an existing private workflow or starts it through the runtime-owned converter before delivering the signal.

func (*Client) SignalWorkflow

func (client *Client) SignalWorkflow(ctx context.Context, workflowID, runID, signal string, argument any) error

SignalWorkflow sends one private signal through the configured client.

func (*Client) WorkflowHistory

func (owned *Client) WorkflowHistory(ctx context.Context, workflowID, runID string) (*historypb.History, error)

WorkflowHistory obtains one complete private workflow history through the owned client. It is intended for retained replay evidence, not public API.

type Factory

type Factory struct {
	// contains filtered or unexported fields
}

Factory applies one local temporalpayload codec to every runtime-owned Temporal client and worker.

func NewFactory

func NewFactory(codec *temporalpayload.Codec) (*Factory, error)

NewFactory creates the only runtime-owned factory for Temporal converter configuration.

func NewS3Factory

func NewS3Factory(config S3Config) (*Factory, error)

NewS3Factory creates the one owned codec/factory from the worker's separate temporal-payload bucket capability. Application code receives only Factory.

func (*Factory) NewClient

func (factory *Factory) NewClient(ctx context.Context, options client.Options) (*Client, error)

NewClient checks retained compatibility before creating a runtime-owned Temporal client.

func (*Factory) NewWorker

func (factory *Factory) NewWorker(temporalClient *Client, taskQueue string, options worker.Options) (worker.Worker, error)

NewWorker creates a runtime worker from a checked runtime-owned client.

The Temporal Go SDK takes the DataConverter from its client, not from worker.Options. Keeping worker creation beside NewClient prevents a second raw client/worker composition seam from appearing in runtime code.

func (*Factory) NewWorkflowReplayer

func (factory *Factory) NewWorkflowReplayer() (worker.WorkflowReplayer, error)

NewWorkflowReplayer applies the exact owned converter to historic workflow replay so codec indirection cannot be bypassed in retained evidence.

type S3Config

type S3Config struct {
	Endpoint  string
	Bucket    string
	Prefix    string
	AccessKey string
	SecretKey string
}

S3Config is the explicit payload-only object-store capability required to construct the local runtime codec. It intentionally has no runtime-content fields or public identity.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL