Documentation
¶
Index ¶
- type FlexibleTimeWindow
- type InvocationRecord
- type Schedule
- type ScheduleGroup
- type SchedulerService
- func (s *SchedulerService) Actions() []service.Action
- func (s *SchedulerService) HandleRequest(ctx *service.RequestContext) (*service.Response, error)
- func (s *SchedulerService) HealthCheck() error
- func (s *SchedulerService) Name() string
- func (s *SchedulerService) SetLocator(locator ServiceLocator)
- type ServiceLocator
- type Store
- func (s *Store) CreateSchedule(name, groupName, description, expression, timezone, state string, ...) (*Schedule, bool)
- func (s *Store) CreateScheduleGroup(name string, tags map[string]string) (*ScheduleGroup, bool)
- func (s *Store) DeleteSchedule(name, groupName string) bool
- func (s *Store) DeleteScheduleGroup(name string) bool
- func (s *Store) GetInvocationHistory(name, groupName string) []InvocationRecord
- func (s *Store) GetSchedule(name, groupName string) (*Schedule, bool)
- func (s *Store) GetScheduleGroup(name string) (*ScheduleGroup, bool)
- func (s *Store) ListScheduleGroups(namePrefix string) []*ScheduleGroup
- func (s *Store) ListSchedules(groupName, state, namePrefix string) []*Schedule
- func (s *Store) ListTagsForResource(arn string) (map[string]string, bool)
- func (s *Store) SetLocator(locator ServiceLocator)
- func (s *Store) TagResource(arn string, tags map[string]string) bool
- func (s *Store) UntagResource(arn string, keys []string) bool
- func (s *Store) UpdateSchedule(name, groupName, description, expression, timezone, state string, ...) (*Schedule, bool)
- type Target
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FlexibleTimeWindow ¶
FlexibleTimeWindow configures schedule flexibility.
type InvocationRecord ¶
InvocationRecord tracks a schedule invocation.
type Schedule ¶
type Schedule struct {
ARN string
Name string
GroupName string
Description string
ScheduleExpression string
ScheduleExpressionTimezone string
State string
FlexibleTimeWindow *FlexibleTimeWindow
Target *Target
StartDate *time.Time
EndDate *time.Time
KmsKeyArn string
CreationDate time.Time
LastModificationDate time.Time
Tags map[string]string
// Behavioral fields
InvocationHistory []InvocationRecord
// contains filtered or unexported fields
}
Schedule represents an EventBridge Scheduler schedule.
type ScheduleGroup ¶
type ScheduleGroup struct {
ARN string
Name string
State string
CreationDate time.Time
LastModificationDate time.Time
Tags map[string]string
}
ScheduleGroup represents a schedule group.
type SchedulerService ¶
type SchedulerService struct {
// contains filtered or unexported fields
}
SchedulerService is the cloudmock implementation of the AWS EventBridge Scheduler API.
func New ¶
func New(accountID, region string) *SchedulerService
New returns a new SchedulerService for the given AWS account ID and region.
func NewWithLocator ¶
func NewWithLocator(accountID, region string, locator ServiceLocator) *SchedulerService
NewWithLocator returns a new SchedulerService with a ServiceLocator for cross-service invocation.
func (*SchedulerService) Actions ¶
func (s *SchedulerService) Actions() []service.Action
Actions returns the list of Scheduler API actions supported by this service.
func (*SchedulerService) HandleRequest ¶
func (s *SchedulerService) HandleRequest(ctx *service.RequestContext) (*service.Response, error)
HandleRequest routes an incoming Scheduler request to the appropriate handler.
func (*SchedulerService) HealthCheck ¶
func (s *SchedulerService) HealthCheck() error
HealthCheck always returns nil (no external dependencies).
func (*SchedulerService) Name ¶
func (s *SchedulerService) Name() string
Name returns the AWS service name used for routing.
func (*SchedulerService) SetLocator ¶
func (s *SchedulerService) SetLocator(locator ServiceLocator)
SetLocator sets the service locator for cross-service calls.
type ServiceLocator ¶
ServiceLocator resolves other services for cross-service invocation.
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
Store manages all Scheduler state in memory.
func (*Store) CreateSchedule ¶
func (s *Store) CreateSchedule(name, groupName, description, expression, timezone, state string, flexWindow *FlexibleTimeWindow, target *Target, kmsKeyArn string, startDate, endDate *time.Time, tags map[string]string) (*Schedule, bool)
CreateSchedule creates a new schedule.
func (*Store) CreateScheduleGroup ¶
CreateScheduleGroup creates a new schedule group.
func (*Store) DeleteSchedule ¶
DeleteSchedule removes a schedule.
func (*Store) DeleteScheduleGroup ¶
DeleteScheduleGroup removes a schedule group and all its schedules.
func (*Store) GetInvocationHistory ¶
func (s *Store) GetInvocationHistory(name, groupName string) []InvocationRecord
GetInvocationHistory returns invocation records for a schedule.
func (*Store) GetSchedule ¶
GetSchedule returns a schedule by name and group.
func (*Store) GetScheduleGroup ¶
func (s *Store) GetScheduleGroup(name string) (*ScheduleGroup, bool)
GetScheduleGroup returns a schedule group by name.
func (*Store) ListScheduleGroups ¶
func (s *Store) ListScheduleGroups(namePrefix string) []*ScheduleGroup
ListScheduleGroups returns all schedule groups.
func (*Store) ListSchedules ¶
ListSchedules returns all schedules in a group.
func (*Store) ListTagsForResource ¶
ListTagsForResource returns tags for a resource by ARN.
func (*Store) SetLocator ¶
func (s *Store) SetLocator(locator ServiceLocator)
SetLocator sets the service locator for cross-service invocation.
func (*Store) TagResource ¶
TagResource applies tags to a resource by ARN.
func (*Store) UntagResource ¶
UntagResource removes tags from a resource by ARN.
func (*Store) UpdateSchedule ¶
func (s *Store) UpdateSchedule(name, groupName, description, expression, timezone, state string, flexWindow *FlexibleTimeWindow, target *Target) (*Schedule, bool)
UpdateSchedule updates a schedule.