func NewTaskResponse(task *apitask.Task, containerMap map[string]*apicontainer.DockerContainer) *TaskResponse {
	containers := []ContainerResponse{}
	for _, container := range containerMap {
		if container.Container.IsInternal() {
			continue
		}
		containerResponse := NewContainerResponse(container, task.GetTaskENI())
		containers = append(containers, containerResponse)
	}

	knownStatus := task.GetKnownStatus()
	knownBackendStatus := knownStatus.BackendStatus()
	desiredStatusInAgent := task.GetDesiredStatus()
	desiredStatus := desiredStatusInAgent.BackendStatus()

	if (knownBackendStatus == "STOPPED" && desiredStatus != "STOPPED") || (knownBackendStatus == "RUNNING" && desiredStatus == "PENDING") {
		desiredStatus = ""
	}

	return &TaskResponse{
		Arn:           task.Arn,
		DesiredStatus: desiredStatus,
		KnownStatus:   knownBackendStatus,
		Family:        task.Family,
		Version:       task.Version,
		Containers:    containers,
	}
}
func NewTaskResponse(task *apitask.Task, containerMap map[string]*apicontainer.DockerContainer) *TaskResponse {
	containers := []ContainerResponse{}
	for _, container := range containerMap {
		if container.Container.IsInternal() {
			continue
		}
		containerResponse := NewContainerResponse(container, task.GetTaskENI())
		containers = append(containers, containerResponse)
	}

	knownStatus := task.GetKnownStatus()
	knownBackendStatus := knownStatus.BackendStatus()
	desiredStatusInAgent := task.GetDesiredStatus()
	desiredStatus := desiredStatusInAgent.BackendStatus()

	if (knownBackendStatus == "STOPPED" && desiredStatus != "STOPPED") || (knownBackendStatus == "RUNNING" && desiredStatus == "PENDING") {
		desiredStatus = ""
	}

	return &TaskResponse{
		Arn:           task.Arn,
		DesiredStatus: desiredStatus,
		KnownStatus:   knownBackendStatus,
		Family:        task.Family,
		Version:       task.Version,
		Containers:    containers,
	}
}
func NewTaskResponse ( task * apitask . Task , containerMap map [ string ] * apicontainer . DockerContainer ) * TaskResponse { containers := [ ] ContainerResponse { } for _ , container := range containerMap { if container . Container . IsInternal ( ) { continue } containerResponse := NewContainerResponse ( container , task . GetTaskENI ( ) ) containers = append ( containers , containerResponse ) } knownStatus := task . GetKnownStatus ( ) knownBackendStatus := knownStatus . BackendStatus ( ) desiredStatusInAgent := task . GetDesiredStatus ( ) desiredStatus := desiredStatusInAgent . BackendStatus ( ) if ( knownBackendStatus == " " && desiredStatus != " " ) || ( knownBackendStatus == " " && desiredStatus == " " ) { desiredStatus = " " } return & TaskResponse { Arn : task . Arn , DesiredStatus : desiredStatus , KnownStatus : knownBackendStatus , Family : task . Family , Version : task . Version , Containers : containers , } }
// NewTaskResponse creates a TaskResponse for a task.
NewTaskResponse creates a TaskResponse for a task .