schedule

package
v4.24.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_temporal_api_schedule_v1_message_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type BackfillRequest

type BackfillRequest struct {

	// Time range to evaluate schedule in. Currently, this time range is
	// exclusive on start_time and inclusive on end_time. (This is admittedly
	// counterintuitive and it may change in the future, so to be safe, use a
	// start time strictly before a scheduled time.) Also note that an action
	// nominally scheduled in the interval but with jitter that pushes it after
	// end_time will not be included.
	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	EndTime   *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// If set, override overlap policy for this request.
	OverlapPolicy v1.ScheduleOverlapPolicy `` /* 150-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*BackfillRequest) Descriptor deprecated

func (*BackfillRequest) Descriptor() ([]byte, []int)

Deprecated: Use BackfillRequest.ProtoReflect.Descriptor instead.

func (*BackfillRequest) GetEndTime

func (x *BackfillRequest) GetEndTime() *timestamppb.Timestamp

func (*BackfillRequest) GetOverlapPolicy

func (x *BackfillRequest) GetOverlapPolicy() v1.ScheduleOverlapPolicy

func (*BackfillRequest) GetStartTime

func (x *BackfillRequest) GetStartTime() *timestamppb.Timestamp

func (*BackfillRequest) ProtoMessage

func (*BackfillRequest) ProtoMessage()

func (*BackfillRequest) ProtoReflect

func (x *BackfillRequest) ProtoReflect() protoreflect.Message

func (*BackfillRequest) Reset

func (x *BackfillRequest) Reset()

func (*BackfillRequest) String

func (x *BackfillRequest) String() string

type CalendarSpec

type CalendarSpec struct {

	// Expression to match seconds. Default: 0
	Second string `protobuf:"bytes,1,opt,name=second,proto3" json:"second,omitempty"`
	// Expression to match minutes. Default: 0
	Minute string `protobuf:"bytes,2,opt,name=minute,proto3" json:"minute,omitempty"`
	// Expression to match hours. Default: 0
	Hour string `protobuf:"bytes,3,opt,name=hour,proto3" json:"hour,omitempty"`
	// Expression to match days of the month. Default: *
	// (-- api-linter: core::0140::prepositions=disabled
	//
	//	aip.dev/not-precedent: standard name of field --)
	DayOfMonth string `protobuf:"bytes,4,opt,name=day_of_month,json=dayOfMonth,proto3" json:"day_of_month,omitempty"`
	// Expression to match months. Default: *
	Month string `protobuf:"bytes,5,opt,name=month,proto3" json:"month,omitempty"`
	// Expression to match years. Default: *
	Year string `protobuf:"bytes,6,opt,name=year,proto3" json:"year,omitempty"`
	// Expression to match days of the week. Default: *
	DayOfWeek string `protobuf:"bytes,7,opt,name=day_of_week,json=dayOfWeek,proto3" json:"day_of_week,omitempty"`
	// Free-form comment describing the intention of this spec.
	Comment string `protobuf:"bytes,8,opt,name=comment,proto3" json:"comment,omitempty"`
	// contains filtered or unexported fields
}

CalendarSpec describes an event specification relative to the calendar, similar to a traditional cron specification, but with labeled fields. Each field can be one of:

*: matches always
x: matches when the field equals x
x/y : matches when the field equals x+n*y where n is an integer
x-z: matches when the field is between x and z inclusive
w,x,y,...: matches when the field is one of the listed values

Each x, y, z, ... is either a decimal integer, or a month or day of week name or abbreviation (in the appropriate fields). A timestamp matches if all fields match. Note that fields have different default values, for convenience. Note that the special case that some cron implementations have for treating day_of_month and day_of_week as "or" instead of "and" when both are set is not implemented. day_of_week can accept 0 or 7 as Sunday CalendarSpec gets compiled into StructuredCalendarSpec, which is what will be returned if you describe the schedule.

func (*CalendarSpec) Descriptor deprecated

func (*CalendarSpec) Descriptor() ([]byte, []int)

Deprecated: Use CalendarSpec.ProtoReflect.Descriptor instead.

func (*CalendarSpec) GetComment

func (x *CalendarSpec) GetComment() string

func (*CalendarSpec) GetDayOfMonth

func (x *CalendarSpec) GetDayOfMonth() string

func (*CalendarSpec) GetDayOfWeek

func (x *CalendarSpec) GetDayOfWeek() string

func (*CalendarSpec) GetHour

func (x *CalendarSpec) GetHour() string

func (*CalendarSpec) GetMinute

func (x *CalendarSpec) GetMinute() string

func (*CalendarSpec) GetMonth

func (x *CalendarSpec) GetMonth() string

func (*CalendarSpec) GetSecond

func (x *CalendarSpec) GetSecond() string

func (*CalendarSpec) GetYear

func (x *CalendarSpec) GetYear() string

func (*CalendarSpec) ProtoMessage

func (*CalendarSpec) ProtoMessage()

func (*CalendarSpec) ProtoReflect

func (x *CalendarSpec) ProtoReflect() protoreflect.Message

func (*CalendarSpec) Reset

func (x *CalendarSpec) Reset()

func (*CalendarSpec) String

func (x *CalendarSpec) String() string

type IntervalSpec

type IntervalSpec struct {
	Interval *durationpb.Duration `protobuf:"bytes,1,opt,name=interval,proto3" json:"interval,omitempty"`
	Phase    *durationpb.Duration `protobuf:"bytes,2,opt,name=phase,proto3" json:"phase,omitempty"`
	// contains filtered or unexported fields
}

IntervalSpec matches times that can be expressed as: epoch + n * interval + phase where n is an integer. phase defaults to zero if missing. interval is required. Both interval and phase must be non-negative and are truncated to the nearest second before any calculations. For example, an interval of 1 hour with phase of zero would match every hour, on the hour. The same interval but a phase of 19 minutes would match every xx:19:00. An interval of 28 days with phase zero would match 2022-02-17T00:00:00Z (among other times). The same interval with a phase of 3 days, 5 hours, and 23 minutes would match 2022-02-20T05:23:00Z instead.

func (*IntervalSpec) Descriptor deprecated

func (*IntervalSpec) Descriptor() ([]byte, []int)

Deprecated: Use IntervalSpec.ProtoReflect.Descriptor instead.

func (*IntervalSpec) GetInterval

func (x *IntervalSpec) GetInterval() *durationpb.Duration

func (*IntervalSpec) GetPhase

func (x *IntervalSpec) GetPhase() *durationpb.Duration

func (*IntervalSpec) ProtoMessage

func (*IntervalSpec) ProtoMessage()

func (*IntervalSpec) ProtoReflect

func (x *IntervalSpec) ProtoReflect() protoreflect.Message

func (*IntervalSpec) Reset

func (x *IntervalSpec) Reset()

func (*IntervalSpec) String

func (x *IntervalSpec) String() string

type Range

type Range struct {

	// Start of range (inclusive).
	Start int32 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
	// End of range (inclusive).
	End int32 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
	// Step (optional, default 1).
	Step int32 `protobuf:"varint,3,opt,name=step,proto3" json:"step,omitempty"`
	// contains filtered or unexported fields
}

Range represents a set of integer values, used to match fields of a calendar time in StructuredCalendarSpec. If end < start, then end is interpreted as equal to start. This means you can use a Range with start set to a value, and end and step unset (defaulting to 0) to represent a single value.

func (*Range) Descriptor deprecated

func (*Range) Descriptor() ([]byte, []int)

Deprecated: Use Range.ProtoReflect.Descriptor instead.

func (*Range) GetEnd

func (x *Range) GetEnd() int32

func (*Range) GetStart

func (x *Range) GetStart() int32

func (*Range) GetStep

func (x *Range) GetStep() int32

func (*Range) ProtoMessage

func (*Range) ProtoMessage()

func (*Range) ProtoReflect

func (x *Range) ProtoReflect() protoreflect.Message

func (*Range) Reset

func (x *Range) Reset()

func (*Range) String

func (x *Range) String() string

type Schedule

type Schedule struct {
	Spec     *ScheduleSpec     `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"`
	Action   *ScheduleAction   `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"`
	Policies *SchedulePolicies `protobuf:"bytes,3,opt,name=policies,proto3" json:"policies,omitempty"`
	State    *ScheduleState    `protobuf:"bytes,4,opt,name=state,proto3" json:"state,omitempty"`
	// contains filtered or unexported fields
}

func (*Schedule) Descriptor deprecated

func (*Schedule) Descriptor() ([]byte, []int)

Deprecated: Use Schedule.ProtoReflect.Descriptor instead.

func (*Schedule) GetAction

func (x *Schedule) GetAction() *ScheduleAction

func (*Schedule) GetPolicies

func (x *Schedule) GetPolicies() *SchedulePolicies

func (*Schedule) GetSpec

func (x *Schedule) GetSpec() *ScheduleSpec

func (*Schedule) GetState

func (x *Schedule) GetState() *ScheduleState

func (*Schedule) ProtoMessage

func (*Schedule) ProtoMessage()

func (*Schedule) ProtoReflect

func (x *Schedule) ProtoReflect() protoreflect.Message

func (*Schedule) Reset

func (x *Schedule) Reset()

func (*Schedule) String

func (x *Schedule) String() string

type ScheduleAction

type ScheduleAction struct {

	// Types that are valid to be assigned to Action:
	//
	//	*ScheduleAction_StartWorkflow
	Action isScheduleAction_Action `protobuf_oneof:"action"`
	// contains filtered or unexported fields
}

func (*ScheduleAction) Descriptor deprecated

func (*ScheduleAction) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleAction.ProtoReflect.Descriptor instead.

func (*ScheduleAction) GetAction

func (x *ScheduleAction) GetAction() isScheduleAction_Action

func (*ScheduleAction) GetStartWorkflow

func (x *ScheduleAction) GetStartWorkflow() *v11.NewWorkflowExecutionInfo

func (*ScheduleAction) ProtoMessage

func (*ScheduleAction) ProtoMessage()

func (*ScheduleAction) ProtoReflect

func (x *ScheduleAction) ProtoReflect() protoreflect.Message

func (*ScheduleAction) Reset

func (x *ScheduleAction) Reset()

func (*ScheduleAction) String

func (x *ScheduleAction) String() string

type ScheduleActionResult

type ScheduleActionResult struct {

	// Time that the action was taken (according to the schedule, including jitter).
	ScheduleTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=schedule_time,json=scheduleTime,proto3" json:"schedule_time,omitempty"`
	// Time that the action was taken (real time).
	ActualTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=actual_time,json=actualTime,proto3" json:"actual_time,omitempty"`
	// If action was start_workflow:
	StartWorkflowResult *v12.WorkflowExecution `protobuf:"bytes,11,opt,name=start_workflow_result,json=startWorkflowResult,proto3" json:"start_workflow_result,omitempty"`
	// If the action was start_workflow, this field will reflect an
	// eventually-consistent view of the started workflow's status.
	StartWorkflowStatus v1.WorkflowExecutionStatus `` /* 173-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*ScheduleActionResult) Descriptor deprecated

func (*ScheduleActionResult) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleActionResult.ProtoReflect.Descriptor instead.

func (*ScheduleActionResult) GetActualTime

func (x *ScheduleActionResult) GetActualTime() *timestamppb.Timestamp

func (*ScheduleActionResult) GetScheduleTime

func (x *ScheduleActionResult) GetScheduleTime() *timestamppb.Timestamp

func (*ScheduleActionResult) GetStartWorkflowResult

func (x *ScheduleActionResult) GetStartWorkflowResult() *v12.WorkflowExecution

func (*ScheduleActionResult) GetStartWorkflowStatus added in v4.17.0

func (x *ScheduleActionResult) GetStartWorkflowStatus() v1.WorkflowExecutionStatus

func (*ScheduleActionResult) ProtoMessage

func (*ScheduleActionResult) ProtoMessage()

func (*ScheduleActionResult) ProtoReflect

func (x *ScheduleActionResult) ProtoReflect() protoreflect.Message

func (*ScheduleActionResult) Reset

func (x *ScheduleActionResult) Reset()

func (*ScheduleActionResult) String

func (x *ScheduleActionResult) String() string

type ScheduleAction_StartWorkflow

type ScheduleAction_StartWorkflow struct {
	// All fields of NewWorkflowExecutionInfo are valid except for:
	// - workflow_id_reuse_policy
	// - cron_schedule
	// The workflow id of the started workflow may not match this exactly,
	// it may have a timestamp appended for uniqueness.
	StartWorkflow *v11.NewWorkflowExecutionInfo `protobuf:"bytes,1,opt,name=start_workflow,json=startWorkflow,proto3,oneof"`
}

type ScheduleInfo

type ScheduleInfo struct {

	// Number of actions taken so far.
	ActionCount int64 `protobuf:"varint,1,opt,name=action_count,json=actionCount,proto3" json:"action_count,omitempty"`
	// Number of times a scheduled action was skipped due to missing the catchup window.
	MissedCatchupWindow int64 `protobuf:"varint,2,opt,name=missed_catchup_window,json=missedCatchupWindow,proto3" json:"missed_catchup_window,omitempty"`
	// Number of skipped actions due to overlap.
	OverlapSkipped int64 `protobuf:"varint,3,opt,name=overlap_skipped,json=overlapSkipped,proto3" json:"overlap_skipped,omitempty"`
	// Number of dropped actions due to buffer limit.
	BufferDropped int64 `protobuf:"varint,10,opt,name=buffer_dropped,json=bufferDropped,proto3" json:"buffer_dropped,omitempty"`
	// Number of actions in the buffer. The buffer holds the actions that cannot
	// be immediately triggered (due to the overlap policy). These actions can be a result of
	// the normal schedule or a backfill.
	BufferSize int64 `protobuf:"varint,11,opt,name=buffer_size,json=bufferSize,proto3" json:"buffer_size,omitempty"`
	// Currently-running workflows started by this schedule. (There might be
	// more than one if the overlap policy allows overlaps.)
	// Note that the run_ids in here are the original execution run ids as
	// started by the schedule. If the workflows retried, did continue-as-new,
	// or were reset, they might still be running but with a different run_id.
	RunningWorkflows []*v12.WorkflowExecution `protobuf:"bytes,9,rep,name=running_workflows,json=runningWorkflows,proto3" json:"running_workflows,omitempty"`
	// Most recent ten actual action times (including manual triggers).
	RecentActions []*ScheduleActionResult `protobuf:"bytes,4,rep,name=recent_actions,json=recentActions,proto3" json:"recent_actions,omitempty"`
	// Next ten scheduled action times.
	FutureActionTimes []*timestamppb.Timestamp `protobuf:"bytes,5,rep,name=future_action_times,json=futureActionTimes,proto3" json:"future_action_times,omitempty"`
	// Timestamps of schedule creation and last update.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// Deprecated.
	//
	// Deprecated: Marked as deprecated in temporal/api/schedule/v1/message.proto.
	InvalidScheduleError string `protobuf:"bytes,8,opt,name=invalid_schedule_error,json=invalidScheduleError,proto3" json:"invalid_schedule_error,omitempty"`
	// contains filtered or unexported fields
}

func (*ScheduleInfo) Descriptor deprecated

func (*ScheduleInfo) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleInfo.ProtoReflect.Descriptor instead.

func (*ScheduleInfo) GetActionCount

func (x *ScheduleInfo) GetActionCount() int64

func (*ScheduleInfo) GetBufferDropped added in v4.10.0

func (x *ScheduleInfo) GetBufferDropped() int64

func (*ScheduleInfo) GetBufferSize added in v4.10.0

func (x *ScheduleInfo) GetBufferSize() int64

func (*ScheduleInfo) GetCreateTime

func (x *ScheduleInfo) GetCreateTime() *timestamppb.Timestamp

func (*ScheduleInfo) GetFutureActionTimes

func (x *ScheduleInfo) GetFutureActionTimes() []*timestamppb.Timestamp

func (*ScheduleInfo) GetInvalidScheduleError deprecated

func (x *ScheduleInfo) GetInvalidScheduleError() string

Deprecated: Marked as deprecated in temporal/api/schedule/v1/message.proto.

func (*ScheduleInfo) GetMissedCatchupWindow

func (x *ScheduleInfo) GetMissedCatchupWindow() int64

func (*ScheduleInfo) GetOverlapSkipped

func (x *ScheduleInfo) GetOverlapSkipped() int64

func (*ScheduleInfo) GetRecentActions

func (x *ScheduleInfo) GetRecentActions() []*ScheduleActionResult

func (*ScheduleInfo) GetRunningWorkflows

func (x *ScheduleInfo) GetRunningWorkflows() []*v12.WorkflowExecution

func (*ScheduleInfo) GetUpdateTime

func (x *ScheduleInfo) GetUpdateTime() *timestamppb.Timestamp

func (*ScheduleInfo) ProtoMessage

func (*ScheduleInfo) ProtoMessage()

func (*ScheduleInfo) ProtoReflect

func (x *ScheduleInfo) ProtoReflect() protoreflect.Message

func (*ScheduleInfo) Reset

func (x *ScheduleInfo) Reset()

func (*ScheduleInfo) String

func (x *ScheduleInfo) String() string

type ScheduleListEntry

type ScheduleListEntry struct {
	ScheduleId       string                `protobuf:"bytes,1,opt,name=schedule_id,json=scheduleId,proto3" json:"schedule_id,omitempty"`
	Memo             *v12.Memo             `protobuf:"bytes,2,opt,name=memo,proto3" json:"memo,omitempty"`
	SearchAttributes *v12.SearchAttributes `protobuf:"bytes,3,opt,name=search_attributes,json=searchAttributes,proto3" json:"search_attributes,omitempty"`
	Info             *ScheduleListInfo     `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
	// contains filtered or unexported fields
}

ScheduleListEntry is returned by ListSchedules.

func (*ScheduleListEntry) Descriptor deprecated

func (*ScheduleListEntry) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleListEntry.ProtoReflect.Descriptor instead.

func (*ScheduleListEntry) GetInfo

func (x *ScheduleListEntry) GetInfo() *ScheduleListInfo

func (*ScheduleListEntry) GetMemo

func (x *ScheduleListEntry) GetMemo() *v12.Memo

func (*ScheduleListEntry) GetScheduleId

func (x *ScheduleListEntry) GetScheduleId() string

func (*ScheduleListEntry) GetSearchAttributes

func (x *ScheduleListEntry) GetSearchAttributes() *v12.SearchAttributes

func (*ScheduleListEntry) ProtoMessage

func (*ScheduleListEntry) ProtoMessage()

func (*ScheduleListEntry) ProtoReflect

func (x *ScheduleListEntry) ProtoReflect() protoreflect.Message

func (*ScheduleListEntry) Reset

func (x *ScheduleListEntry) Reset()

func (*ScheduleListEntry) String

func (x *ScheduleListEntry) String() string

type ScheduleListInfo

type ScheduleListInfo struct {

	// From spec:
	// Some fields are dropped from this copy of spec: timezone_data
	Spec *ScheduleSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"`
	// From action:
	// Action is a oneof field, but we need to encode this in JSON and oneof fields don't work
	// well with JSON. If action is start_workflow, this is set:
	WorkflowType *v12.WorkflowType `protobuf:"bytes,2,opt,name=workflow_type,json=workflowType,proto3" json:"workflow_type,omitempty"`
	// From state:
	Notes  string `protobuf:"bytes,3,opt,name=notes,proto3" json:"notes,omitempty"`
	Paused bool   `protobuf:"varint,4,opt,name=paused,proto3" json:"paused,omitempty"`
	// From info (maybe fewer entries):
	RecentActions     []*ScheduleActionResult  `protobuf:"bytes,5,rep,name=recent_actions,json=recentActions,proto3" json:"recent_actions,omitempty"`
	FutureActionTimes []*timestamppb.Timestamp `protobuf:"bytes,6,rep,name=future_action_times,json=futureActionTimes,proto3" json:"future_action_times,omitempty"`
	// contains filtered or unexported fields
}

ScheduleListInfo is an abbreviated set of values from Schedule and ScheduleInfo that's returned in ListSchedules.

func (*ScheduleListInfo) Descriptor deprecated

func (*ScheduleListInfo) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleListInfo.ProtoReflect.Descriptor instead.

func (*ScheduleListInfo) GetFutureActionTimes

func (x *ScheduleListInfo) GetFutureActionTimes() []*timestamppb.Timestamp

func (*ScheduleListInfo) GetNotes

func (x *ScheduleListInfo) GetNotes() string

func (*ScheduleListInfo) GetPaused

func (x *ScheduleListInfo) GetPaused() bool

func (*ScheduleListInfo) GetRecentActions

func (x *ScheduleListInfo) GetRecentActions() []*ScheduleActionResult

func (*ScheduleListInfo) GetSpec

func (x *ScheduleListInfo) GetSpec() *ScheduleSpec

func (*ScheduleListInfo) GetWorkflowType

func (x *ScheduleListInfo) GetWorkflowType() *v12.WorkflowType

func (*ScheduleListInfo) ProtoMessage

func (*ScheduleListInfo) ProtoMessage()

func (*ScheduleListInfo) ProtoReflect

func (x *ScheduleListInfo) ProtoReflect() protoreflect.Message

func (*ScheduleListInfo) Reset

func (x *ScheduleListInfo) Reset()

func (*ScheduleListInfo) String

func (x *ScheduleListInfo) String() string

type SchedulePatch

type SchedulePatch struct {

	// If set, trigger one action immediately.
	TriggerImmediately *TriggerImmediatelyRequest `protobuf:"bytes,1,opt,name=trigger_immediately,json=triggerImmediately,proto3" json:"trigger_immediately,omitempty"`
	// If set, runs though the specified time period(s) and takes actions as if that time
	// passed by right now, all at once. The overlap policy can be overridden for the
	// scope of the backfill.
	BackfillRequest []*BackfillRequest `protobuf:"bytes,2,rep,name=backfill_request,json=backfillRequest,proto3" json:"backfill_request,omitempty"`
	// If set, change the state to paused or unpaused (respectively) and set the
	// notes field to the value of the string.
	Pause   string `protobuf:"bytes,3,opt,name=pause,proto3" json:"pause,omitempty"`
	Unpause string `protobuf:"bytes,4,opt,name=unpause,proto3" json:"unpause,omitempty"`
	// contains filtered or unexported fields
}

func (*SchedulePatch) Descriptor deprecated

func (*SchedulePatch) Descriptor() ([]byte, []int)

Deprecated: Use SchedulePatch.ProtoReflect.Descriptor instead.

func (*SchedulePatch) GetBackfillRequest

func (x *SchedulePatch) GetBackfillRequest() []*BackfillRequest

func (*SchedulePatch) GetPause

func (x *SchedulePatch) GetPause() string

func (*SchedulePatch) GetTriggerImmediately

func (x *SchedulePatch) GetTriggerImmediately() *TriggerImmediatelyRequest

func (*SchedulePatch) GetUnpause

func (x *SchedulePatch) GetUnpause() string

func (*SchedulePatch) ProtoMessage

func (*SchedulePatch) ProtoMessage()

func (*SchedulePatch) ProtoReflect

func (x *SchedulePatch) ProtoReflect() protoreflect.Message

func (*SchedulePatch) Reset

func (x *SchedulePatch) Reset()

func (*SchedulePatch) String

func (x *SchedulePatch) String() string

type SchedulePolicies

type SchedulePolicies struct {

	// Policy for overlaps.
	// Note that this can be changed after a schedule has taken some actions,
	// and some changes might produce unintuitive results. In general, the later
	// policy overrides the earlier policy.
	OverlapPolicy v1.ScheduleOverlapPolicy `` /* 150-byte string literal not displayed */
	// Policy for catchups:
	// If the Temporal server misses an action due to one or more components
	// being down, and comes back up, the action will be run if the scheduled
	// time is within this window from the current time.
	// This value defaults to one year, and can't be less than 10 seconds.
	CatchupWindow *durationpb.Duration `protobuf:"bytes,2,opt,name=catchup_window,json=catchupWindow,proto3" json:"catchup_window,omitempty"`
	// If true, and a workflow run fails or times out, turn on "paused".
	// This applies after retry policies: the full chain of retries must fail to
	// trigger a pause here.
	PauseOnFailure bool `protobuf:"varint,3,opt,name=pause_on_failure,json=pauseOnFailure,proto3" json:"pause_on_failure,omitempty"`
	// If true, and the action would start a workflow, a timestamp will not be
	// appended to the scheduled workflow id.
	KeepOriginalWorkflowId bool `` /* 132-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*SchedulePolicies) Descriptor deprecated

func (*SchedulePolicies) Descriptor() ([]byte, []int)

Deprecated: Use SchedulePolicies.ProtoReflect.Descriptor instead.

func (*SchedulePolicies) GetCatchupWindow

func (x *SchedulePolicies) GetCatchupWindow() *durationpb.Duration

func (*SchedulePolicies) GetKeepOriginalWorkflowId added in v4.13.0

func (x *SchedulePolicies) GetKeepOriginalWorkflowId() bool

func (*SchedulePolicies) GetOverlapPolicy

func (x *SchedulePolicies) GetOverlapPolicy() v1.ScheduleOverlapPolicy

func (*SchedulePolicies) GetPauseOnFailure

func (x *SchedulePolicies) GetPauseOnFailure() bool

func (*SchedulePolicies) ProtoMessage

func (*SchedulePolicies) ProtoMessage()

func (*SchedulePolicies) ProtoReflect

func (x *SchedulePolicies) ProtoReflect() protoreflect.Message

func (*SchedulePolicies) Reset

func (x *SchedulePolicies) Reset()

func (*SchedulePolicies) String

func (x *SchedulePolicies) String() string

type ScheduleSpec

type ScheduleSpec struct {

	// Calendar-based specifications of times.
	StructuredCalendar []*StructuredCalendarSpec `protobuf:"bytes,7,rep,name=structured_calendar,json=structuredCalendar,proto3" json:"structured_calendar,omitempty"`
	// cron_string holds a traditional cron specification as a string. It
	// accepts 5, 6, or 7 fields, separated by spaces, and interprets them the
	// same way as CalendarSpec.
	// 5 fields:         minute, hour, day_of_month, month, day_of_week
	// 6 fields:         minute, hour, day_of_month, month, day_of_week, year
	// 7 fields: second, minute, hour, day_of_month, month, day_of_week, year
	// If year is not given, it defaults to *. If second is not given, it
	// defaults to 0.
	// Shorthands @yearly, @monthly, @weekly, @daily, and @hourly are also
	// accepted instead of the 5-7 time fields.
	// Optionally, the string can be preceded by CRON_TZ=<timezone name> or
	// TZ=<timezone name>, which will get copied to timezone_name. (There must
	// not also be a timezone_name present.)
	// Optionally "#" followed by a comment can appear at the end of the string.
	// Note that the special case that some cron implementations have for
	// treating day_of_month and day_of_week as "or" instead of "and" when both
	// are set is not implemented.
	// @every <interval>[/<phase>] is accepted and gets compiled into an
	// IntervalSpec instead. <interval> and <phase> should be a decimal integer
	// with a unit suffix s, m, h, or d.
	CronString []string `protobuf:"bytes,8,rep,name=cron_string,json=cronString,proto3" json:"cron_string,omitempty"`
	// Calendar-based specifications of times.
	Calendar []*CalendarSpec `protobuf:"bytes,1,rep,name=calendar,proto3" json:"calendar,omitempty"`
	// Interval-based specifications of times.
	Interval []*IntervalSpec `protobuf:"bytes,2,rep,name=interval,proto3" json:"interval,omitempty"`
	// Any timestamps matching any of exclude_* will be skipped.
	// Deprecated. Use exclude_structured_calendar.
	//
	// Deprecated: Marked as deprecated in temporal/api/schedule/v1/message.proto.
	ExcludeCalendar           []*CalendarSpec           `protobuf:"bytes,3,rep,name=exclude_calendar,json=excludeCalendar,proto3" json:"exclude_calendar,omitempty"`
	ExcludeStructuredCalendar []*StructuredCalendarSpec `` /* 138-byte string literal not displayed */
	// If start_time is set, any timestamps before start_time will be skipped.
	// (Together, start_time and end_time make an inclusive interval.)
	StartTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// If end_time is set, any timestamps after end_time will be skipped.
	EndTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// All timestamps will be incremented by a random value from 0 to this
	// amount of jitter. Default: 0
	Jitter *durationpb.Duration `protobuf:"bytes,6,opt,name=jitter,proto3" json:"jitter,omitempty"`
	// Time zone to interpret all calendar-based specs in.
	//
	// If unset, defaults to UTC. We recommend using UTC for your application if
	// at all possible, to avoid various surprising properties of time zones.
	//
	// Time zones may be provided by name, corresponding to names in the IANA
	// time zone database (see https://www.iana.org/time-zones). The definition
	// will be loaded by the Temporal server from the environment it runs in.
	//
	// If your application requires more control over the time zone definition
	// used, it may pass in a complete definition in the form of a TZif file
	// from the time zone database. If present, this will be used instead of
	// loading anything from the environment. You are then responsible for
	// updating timezone_data when the definition changes.
	//
	// Calendar spec matching is based on literal matching of the clock time
	// with no special handling of DST: if you write a calendar spec that fires
	// at 2:30am and specify a time zone that follows DST, that action will not
	// be triggered on the day that has no 2:30am. Similarly, an action that
	// fires at 1:30am will be triggered twice on the day that has two 1:30s.
	//
	// Also note that no actions are taken on leap-seconds (e.g. 23:59:60 UTC).
	TimezoneName string `protobuf:"bytes,10,opt,name=timezone_name,json=timezoneName,proto3" json:"timezone_name,omitempty"`
	TimezoneData []byte `protobuf:"bytes,11,opt,name=timezone_data,json=timezoneData,proto3" json:"timezone_data,omitempty"`
	// contains filtered or unexported fields
}

ScheduleSpec is a complete description of a set of absolute timestamps (possibly infinite) that an action should occur at. The meaning of a ScheduleSpec depends only on its contents and never changes, except that the definition of a time zone can change over time (most commonly, when daylight saving time policy changes for an area). To create a totally self-contained ScheduleSpec, use UTC or include timezone_data.

For input, you can provide zero or more of: structured_calendar, calendar, cron_string, interval, and exclude_structured_calendar, and all of them will be used (the schedule will take action at the union of all of their times, minus the ones that match exclude_structured_calendar).

On input, calendar and cron_string fields will be compiled into structured_calendar (and maybe interval and timezone_name), so if you Describe a schedule, you'll see only structured_calendar, interval, etc.

If a spec has no matching times after the current time, then the schedule will be subject to automatic deletion (after several days).

func (*ScheduleSpec) Descriptor deprecated

func (*ScheduleSpec) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleSpec.ProtoReflect.Descriptor instead.

func (*ScheduleSpec) GetCalendar

func (x *ScheduleSpec) GetCalendar() []*CalendarSpec

func (*ScheduleSpec) GetCronString

func (x *ScheduleSpec) GetCronString() []string

func (*ScheduleSpec) GetEndTime

func (x *ScheduleSpec) GetEndTime() *timestamppb.Timestamp

func (*ScheduleSpec) GetExcludeCalendar deprecated

func (x *ScheduleSpec) GetExcludeCalendar() []*CalendarSpec

Deprecated: Marked as deprecated in temporal/api/schedule/v1/message.proto.

func (*ScheduleSpec) GetExcludeStructuredCalendar

func (x *ScheduleSpec) GetExcludeStructuredCalendar() []*StructuredCalendarSpec

func (*ScheduleSpec) GetInterval

func (x *ScheduleSpec) GetInterval() []*IntervalSpec

func (*ScheduleSpec) GetJitter

func (x *ScheduleSpec) GetJitter() *durationpb.Duration

func (*ScheduleSpec) GetStartTime

func (x *ScheduleSpec) GetStartTime() *timestamppb.Timestamp

func (*ScheduleSpec) GetStructuredCalendar

func (x *ScheduleSpec) GetStructuredCalendar() []*StructuredCalendarSpec

func (*ScheduleSpec) GetTimezoneData

func (x *ScheduleSpec) GetTimezoneData() []byte

func (*ScheduleSpec) GetTimezoneName

func (x *ScheduleSpec) GetTimezoneName() string

func (*ScheduleSpec) ProtoMessage

func (*ScheduleSpec) ProtoMessage()

func (*ScheduleSpec) ProtoReflect

func (x *ScheduleSpec) ProtoReflect() protoreflect.Message

func (*ScheduleSpec) Reset

func (x *ScheduleSpec) Reset()

func (*ScheduleSpec) String

func (x *ScheduleSpec) String() string

type ScheduleState

type ScheduleState struct {

	// Informative human-readable message with contextual notes, e.g. the reason
	// a schedule is paused. The system may overwrite this message on certain
	// conditions, e.g. when pause-on-failure happens.
	Notes string `protobuf:"bytes,1,opt,name=notes,proto3" json:"notes,omitempty"`
	// If true, do not take any actions based on the schedule spec.
	Paused bool `protobuf:"varint,2,opt,name=paused,proto3" json:"paused,omitempty"`
	// If limited_actions is true, decrement remaining_actions after each
	// action, and do not take any more scheduled actions if remaining_actions
	// is zero. Actions may still be taken by explicit request (i.e. trigger
	// immediately or backfill). Skipped actions (due to overlap policy) do not
	// count against remaining actions.
	// If a schedule has no more remaining actions, then the schedule will be
	// subject to automatic deletion (after several days).
	LimitedActions   bool  `protobuf:"varint,3,opt,name=limited_actions,json=limitedActions,proto3" json:"limited_actions,omitempty"`
	RemainingActions int64 `protobuf:"varint,4,opt,name=remaining_actions,json=remainingActions,proto3" json:"remaining_actions,omitempty"`
	// contains filtered or unexported fields
}

func (*ScheduleState) Descriptor deprecated

func (*ScheduleState) Descriptor() ([]byte, []int)

Deprecated: Use ScheduleState.ProtoReflect.Descriptor instead.

func (*ScheduleState) GetLimitedActions

func (x *ScheduleState) GetLimitedActions() bool

func (*ScheduleState) GetNotes

func (x *ScheduleState) GetNotes() string

func (*ScheduleState) GetPaused

func (x *ScheduleState) GetPaused() bool

func (*ScheduleState) GetRemainingActions

func (x *ScheduleState) GetRemainingActions() int64

func (*ScheduleState) ProtoMessage

func (*ScheduleState) ProtoMessage()

func (*ScheduleState) ProtoReflect

func (x *ScheduleState) ProtoReflect() protoreflect.Message

func (*ScheduleState) Reset

func (x *ScheduleState) Reset()

func (*ScheduleState) String

func (x *ScheduleState) String() string

type StructuredCalendarSpec

type StructuredCalendarSpec struct {

	// Match seconds (0-59)
	Second []*Range `protobuf:"bytes,1,rep,name=second,proto3" json:"second,omitempty"`
	// Match minutes (0-59)
	Minute []*Range `protobuf:"bytes,2,rep,name=minute,proto3" json:"minute,omitempty"`
	// Match hours (0-23)
	Hour []*Range `protobuf:"bytes,3,rep,name=hour,proto3" json:"hour,omitempty"`
	// Match days of the month (1-31)
	// (-- api-linter: core::0140::prepositions=disabled
	//
	//	aip.dev/not-precedent: standard name of field --)
	DayOfMonth []*Range `protobuf:"bytes,4,rep,name=day_of_month,json=dayOfMonth,proto3" json:"day_of_month,omitempty"`
	// Match months (1-12)
	Month []*Range `protobuf:"bytes,5,rep,name=month,proto3" json:"month,omitempty"`
	// Match years.
	Year []*Range `protobuf:"bytes,6,rep,name=year,proto3" json:"year,omitempty"`
	// Match days of the week (0-6; 0 is Sunday).
	DayOfWeek []*Range `protobuf:"bytes,7,rep,name=day_of_week,json=dayOfWeek,proto3" json:"day_of_week,omitempty"`
	// Free-form comment describing the intention of this spec.
	Comment string `protobuf:"bytes,8,opt,name=comment,proto3" json:"comment,omitempty"`
	// contains filtered or unexported fields
}

StructuredCalendarSpec describes an event specification relative to the calendar, in a form that's easy to work with programmatically. Each field can be one or more ranges. A timestamp matches if at least one range of each field matches the corresponding fields of the timestamp, except for year: if year is missing, that means all years match. For all fields besides year, at least one Range must be present to match anything. Relative expressions such as "last day of the month" or "third Monday" are not currently representable; callers must enumerate the concrete days they require.

func (*StructuredCalendarSpec) Descriptor deprecated

func (*StructuredCalendarSpec) Descriptor() ([]byte, []int)

Deprecated: Use StructuredCalendarSpec.ProtoReflect.Descriptor instead.

func (*StructuredCalendarSpec) GetComment

func (x *StructuredCalendarSpec) GetComment() string

func (*StructuredCalendarSpec) GetDayOfMonth

func (x *StructuredCalendarSpec) GetDayOfMonth() []*Range

func (*StructuredCalendarSpec) GetDayOfWeek

func (x *StructuredCalendarSpec) GetDayOfWeek() []*Range

func (*StructuredCalendarSpec) GetHour

func (x *StructuredCalendarSpec) GetHour() []*Range

func (*StructuredCalendarSpec) GetMinute

func (x *StructuredCalendarSpec) GetMinute() []*Range

func (*StructuredCalendarSpec) GetMonth

func (x *StructuredCalendarSpec) GetMonth() []*Range

func (*StructuredCalendarSpec) GetSecond

func (x *StructuredCalendarSpec) GetSecond() []*Range

func (*StructuredCalendarSpec) GetYear

func (x *StructuredCalendarSpec) GetYear() []*Range

func (*StructuredCalendarSpec) ProtoMessage

func (*StructuredCalendarSpec) ProtoMessage()

func (*StructuredCalendarSpec) ProtoReflect

func (x *StructuredCalendarSpec) ProtoReflect() protoreflect.Message

func (*StructuredCalendarSpec) Reset

func (x *StructuredCalendarSpec) Reset()

func (*StructuredCalendarSpec) String

func (x *StructuredCalendarSpec) String() string

type TriggerImmediatelyRequest

type TriggerImmediatelyRequest struct {

	// If set, override overlap policy for this one request.
	OverlapPolicy v1.ScheduleOverlapPolicy `` /* 150-byte string literal not displayed */
	// Timestamp used for the identity of the target workflow.
	// If not set the default value is the current time.
	ScheduledTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=scheduled_time,json=scheduledTime,proto3" json:"scheduled_time,omitempty"`
	// contains filtered or unexported fields
}

func (*TriggerImmediatelyRequest) Descriptor deprecated

func (*TriggerImmediatelyRequest) Descriptor() ([]byte, []int)

Deprecated: Use TriggerImmediatelyRequest.ProtoReflect.Descriptor instead.

func (*TriggerImmediatelyRequest) GetOverlapPolicy

func (x *TriggerImmediatelyRequest) GetOverlapPolicy() v1.ScheduleOverlapPolicy

func (*TriggerImmediatelyRequest) GetScheduledTime added in v4.21.0

func (x *TriggerImmediatelyRequest) GetScheduledTime() *timestamppb.Timestamp

func (*TriggerImmediatelyRequest) ProtoMessage

func (*TriggerImmediatelyRequest) ProtoMessage()

func (*TriggerImmediatelyRequest) ProtoReflect

func (*TriggerImmediatelyRequest) Reset

func (x *TriggerImmediatelyRequest) Reset()

func (*TriggerImmediatelyRequest) String

func (x *TriggerImmediatelyRequest) String() string

Jump to

Keyboard shortcuts

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