Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func HandleEngineEvents ¶
func HandleEngineEvents(taskEngine engine.TaskEngine, client api.ECSClient, taskHandler *TaskHandler, attachmentEventHandler *AttachmentEventHandler)
HandleEngineEvents handles state change events from the state change event channel by sending it to responsible event handler
Types ¶
type AttachmentEventHandler ¶ added in v1.28.0
type AttachmentEventHandler struct {
// contains filtered or unexported fields
}
AttachmentEventHandler is a handler that is responsible for submitting attachment state change events to backend
func NewAttachmentEventHandler ¶ added in v1.28.0
func NewAttachmentEventHandler(ctx context.Context, stateSaver statemanager.Saver, client api.ECSClient) *AttachmentEventHandler
NewAttachmentEventHandler returns a new AttachmentEventHandler object
func (*AttachmentEventHandler) AddStateChangeEvent ¶ added in v1.28.0
func (eventHandler *AttachmentEventHandler) AddStateChangeEvent(change statechange.Event) error
AddStateChangeEvent adds a state change event to AttachmentEventHandler for it to handle
type TaskHandler ¶ added in v1.14.2
type TaskHandler struct {
// contains filtered or unexported fields
}
TaskHandler encapsulates the the map of a task arn to task and container events associated with said task
func NewTaskHandler ¶ added in v1.14.2
func NewTaskHandler(ctx context.Context, stateManager statemanager.Saver, state dockerstate.TaskEngineState, client api.ECSClient) *TaskHandler
NewTaskHandler returns a pointer to TaskHandler
func (*TaskHandler) AddStateChangeEvent ¶ added in v1.14.2
func (handler *TaskHandler) AddStateChangeEvent(change statechange.Event, client api.ECSClient) error
AddStateChangeEvent queues up the state change event to be sent to ECS. If the event is for a container state change, it just gets added to the handler.tasksToContainerStates map. If the event is for task state change, it triggers the non-blocking handler.submitTaskEvents method to submit the batched container state changes and the task state change to ECS