<commit_before>package gocd

import (
	"context"
	"fmt"
	"net/url"
)

// AgentsService describes the HAL _link resource for the api response object for an agent objects.
type AgentsService service

// AgentsLinks describes the HAL _link resource for the api response object for a collection of agent objects.
//go:generate gocd-response-links-generator -type=AgentsLinks,AgentLinks
type AgentsLinks struct {
	Self *url.URL `json:"self"`
	Doc  *url.URL `json:"doc"`
}

// AgentLinks describes the HAL _link resource for the api response object for a single agent object.
type AgentLinks struct {
	Self *url.URL `json:"self"`
	Doc  *url.URL `json:"doc"`
	Find *url.URL `json:"find"`
}

// AgentsResponse describes the structure of the API response when listing collections of agent object.
type AgentsResponse struct {
	Links *AgentsLinks `json:"_links,omitempty"`
	Embedded *struct {
		Agents []*Agent `json:"agents"`
	} `json:"_embedded,omitempty"`
}

// Agent describes a single agent object.
type Agent struct {
	UUID             string        `json:"uuid"`
	Hostname         string        `json:"hostname"`
	ElasticAgentID   string        `json:"elastic_agent_id"`
	ElasticPluginID  string        `json:"elastic_plugin_id"`
	IPAddress        string        `json:"ip_address"`
	Sandbox          string        `json:"sandbox"`
	OperatingSystem  string        `json:"operating_system"`
	FreeSpace        int64         `json:"free_space"`
	AgentConfigState string        `json:"agent_config_state"`
	AgentState       string        `json:"agent_state"`
	Resources        []string      `json:"resources"`
	Environments     []string      `json:"environments"`
	BuildState       string        `json:"build_state"`
	BuildDetails     *BuildDetails `json:"build_details"`
	Links            *AgentLinks   `json:"_links,omitempty"`
	client           *Client<commit_msg>Autocommit for 'gofmt -w'.<commit_after>package gocd

import (
	"context"
	"fmt"
	"net/url"
)

// AgentsService describes the HAL _link resource for the api response object for an agent objects.
type AgentsService service

// AgentsLinks describes the HAL _link resource for the api response object for a collection of agent objects.
//go:generate gocd-response-links-generator -type=AgentsLinks,AgentLinks
type AgentsLinks struct {
	Self *url.URL `json:"self"`
	Doc  *url.URL `json:"doc"`
}

// AgentLinks describes the HAL _link resource for the api response object for a single agent object.
type AgentLinks struct {
	Self *url.URL `json:"self"`
	Doc  *url.URL `json:"doc"`
	Find *url.URL `json:"find"`
}

// AgentsResponse describes the structure of the API response when listing collections of agent object.
type AgentsResponse struct {
	Links    *AgentsLinks `json:"_links,omitempty"`
	Embedded *struct {
		Agents []*Agent `json:"agents"`
	} `json:"_embedded,omitempty"`
}

// Agent describes a single agent object.
type Agent struct {
	UUID             string        `json:"uuid"`
	Hostname         string        `json:"hostname"`
	ElasticAgentID   string        `json:"elastic_agent_id"`
	ElasticPluginID  string        `json:"elastic_plugin_id"`
	IPAddress        string        `json:"ip_address"`
	Sandbox          string        `json:"sandbox"`
	OperatingSystem  string        `json:"operating_system"`
	FreeSpace        int64         `json:"free_space"`
	AgentConfigState string        `json:"agent_config_state"`
	AgentState       string        `json:"agent_state"`
	Resources        []string      `json:"resources"`
	Environments     []string      `json:"environments"`
	BuildState       string        `json:"build_state"`
	BuildDetails     *BuildDetails `json:"build_details"`
	Links            *AgentLinks   `json:"_links,omitempty"`
	client           *Client
{'fraction_non_alphanumeric': 0.1001606855918586, 'fraction_numerical': 0.0010712372790573112, 'mean_word_length': 3.3279258400927, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1011880', 'n_tokens_mistral': 1080, 'n_tokens_neox': 1051, 'n_words': 328}