本文整理汇总了Golang中github.com/aws/amazon-ecs-agent/agent/engine/dockerstate.DockerTaskEngineState类的典型用法代码示例。如果您正苦于以下问题:Golang DockerTaskEngineState类的具体用法?Golang DockerTaskEngineState怎么用?Golang DockerTaskEngineState使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了DockerTaskEngineState类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: NewTasksResponse
func NewTasksResponse(state *dockerstate.DockerTaskEngineState) *TasksResponse {
allTasks := state.AllTasks()
taskResponses := make([]*TaskResponse, len(allTasks))
for ndx, task := range allTasks {
containerMap, _ := state.ContainerMapByArn(task.Arn)
taskResponses[ndx] = NewTaskResponse(task, containerMap)
}
return &TasksResponse{Tasks: taskResponses}
}
示例2: stateSetupHelper
func stateSetupHelper(state *dockerstate.DockerTaskEngineState, tasks []*api.Task) {
for _, task := range tasks {
state.AddTask(task)
for _, container := range task.Containers {
state.AddContainer(&api.DockerContainer{
Container: container,
DockerId: "dockerid-" + task.Arn + "-" + container.Name,
DockerName: "dockername-" + task.Arn + "-" + container.Name,
}, task)
}
}
}
示例3: createTaskJSONResponse
// Creates JSON response and sets the http status code for the task queried.
func createTaskJSONResponse(task *api.Task, found bool, resourceId string, state *dockerstate.DockerTaskEngineState) ([]byte, int) {
var responseJSON []byte
status := statusOK
if found {
containerMap, _ := state.ContainerMapByArn(task.Arn)
responseJSON, _ = json.Marshal(NewTaskResponse(task, containerMap))
} else {
log.Warn("Could not find requsted resource: " + resourceId)
responseJSON, _ = json.Marshal(&TaskResponse{})
status = statusBadRequest
}
return responseJSON, status
}
示例4: DockerStatesEqual
// DockerStatesEqual determines if the two given dockerstates are equal, for
// equal meaning they have the same tasks and their tasks are equal
func DockerStatesEqual(lhs, rhs *dockerstate.DockerTaskEngineState) bool {
// Simple equality check; just verify that all tasks are equal
lhsTasks := lhs.AllTasks()
rhsTasks := rhs.AllTasks()
if len(lhsTasks) != len(rhsTasks) {
return false
}
for _, left := range lhsTasks {
right, ok := rhs.TaskByArn(left.Arn)
if !ok {
return false
}
if !api_testutils.TasksEqual(left, right) {
return false
}
}
return true
}