client/container_top.go
7c36a1af
 package client
 
 import (
 	"encoding/json"
 	"net/url"
 	"strings"
 
16bdbaaa
 	"github.com/docker/docker/api/types/container"
7c36a1af
 	"golang.org/x/net/context"
 )
 
 // ContainerTop shows process information from within a container.
16bdbaaa
 func (cli *Client) ContainerTop(ctx context.Context, containerID string, arguments []string) (container.ContainerTopOKBody, error) {
 	var response container.ContainerTopOKBody
7c36a1af
 	query := url.Values{}
 	if len(arguments) > 0 {
 		query.Set("ps_args", strings.Join(arguments, " "))
 	}
 
 	resp, err := cli.get(ctx, "/containers/"+containerID+"/top", query, nil)
 	if err != nil {
 		return response, err
 	}
 
 	err = json.NewDecoder(resp.body).Decode(&response)
 	ensureReaderClosed(resp)
 	return response, err
 }