Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pagerduty: cleanup of remaining structs #63

Merged
merged 1 commit into from
Sep 18, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions pagerduty/addon.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ type AddonService service

// Addon represents a PagerDuty add-on.
type Addon struct {
Addon *Addon `json:"addon,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Expand Down Expand Up @@ -38,6 +37,11 @@ type ListAddonsResponse struct {
Addons []*Addon `json:"addons,omitempty"`
}

// AddonPayload represents an addon.
type AddonPayload struct {
Addon *Addon `json:"addon,omitempty"`
}

// List lists installed add-ons.
func (s *AddonService) List(o *ListAddonsOptions) (*ListAddonsResponse, *Response, error) {
u := "/addons"
Expand All @@ -54,9 +58,9 @@ func (s *AddonService) List(o *ListAddonsOptions) (*ListAddonsResponse, *Respons
// Install installs an add-on.
func (s *AddonService) Install(addon *Addon) (*Addon, *Response, error) {
u := "/addons"
v := new(Addon)
v := new(AddonPayload)

resp, err := s.client.newRequestDo("POST", u, nil, &Addon{Addon: addon}, v)
resp, err := s.client.newRequestDo("POST", u, nil, &AddonPayload{Addon: addon}, v)
if err != nil {
return nil, nil, err
}
Expand All @@ -73,7 +77,7 @@ func (s *AddonService) Delete(id string) (*Response, error) {
// Get retrieves information about an add-on.
func (s *AddonService) Get(id string) (*Addon, *Response, error) {
u := fmt.Sprintf("/addons/%s", id)
v := new(Addon)
v := new(AddonPayload)

resp, err := s.client.newRequestDo("GET", u, nil, nil, &v)
if err != nil {
Expand All @@ -86,8 +90,8 @@ func (s *AddonService) Get(id string) (*Addon, *Response, error) {
// Update updates an existing add-on.
func (s *AddonService) Update(id string, addon *Addon) (*Addon, *Response, error) {
u := fmt.Sprintf("/addons/%s", id)
v := new(Addon)
resp, err := s.client.newRequestDo("PUT", u, nil, &Addon{Addon: addon}, &v)
v := new(AddonPayload)
resp, err := s.client.newRequestDo("PUT", u, nil, &AddonPayload{Addon: addon}, &v)
if err != nil {
return nil, nil, err
}
Expand Down
4 changes: 2 additions & 2 deletions pagerduty/addon_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ func TestAddonsInstall(t *testing.T) {
mux.HandleFunc("/addons", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "POST")
w.WriteHeader(http.StatusCreated)
v := new(Addon)
v := new(AddonPayload)
json.NewDecoder(r.Body).Decode(v)
if !reflect.DeepEqual(v.Addon, input) {
t.Errorf("Request body = %+v, want %+v", v, input)
Expand Down Expand Up @@ -102,7 +102,7 @@ func TestAddonsUpdate(t *testing.T) {

mux.HandleFunc("/addons/1", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "PUT")
v := new(Addon)
v := new(AddonPayload)
json.NewDecoder(r.Body).Decode(v)
if !reflect.DeepEqual(v.Addon, input) {
t.Errorf("Request body = %+v, want %+v", v, input)
Expand Down
40 changes: 22 additions & 18 deletions pagerduty/escalation_policy.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,19 +15,18 @@ type EscalationRule struct {

// EscalationPolicy represents an escalation policy.
type EscalationPolicy struct {
Description string `json:"description,omitempty"`
EscalationPolicy *EscalationPolicy `json:"escalation_policy,omitempty"`
EscalationRules []*EscalationRule `json:"escalation_rules,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
NumLoops *int `json:"num_loops,omitempty"`
RepeatEnabled bool `json:"repeat_enabled,omitempty"`
Self string `json:"self,omitempty"`
Services []*ServiceReference `json:"services,omitempty"`
Summary string `json:"summary,omitempty"`
Teams []*TeamReference `json:"teams"`
Type string `json:"type,omitempty"`
Description string `json:"description,omitempty"`
EscalationRules []*EscalationRule `json:"escalation_rules,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
NumLoops *int `json:"num_loops,omitempty"`
RepeatEnabled bool `json:"repeat_enabled,omitempty"`
Self string `json:"self,omitempty"`
Services []*ServiceReference `json:"services,omitempty"`
Summary string `json:"summary,omitempty"`
Teams []*TeamReference `json:"teams"`
Type string `json:"type,omitempty"`
}

// ListEscalationPoliciesResponse represents a list response of escalation policies.
Expand Down Expand Up @@ -84,12 +83,17 @@ func (s *EscalationPolicyService) List(o *ListEscalationPoliciesOptions) (*ListE
return v, resp, nil
}

// EscalationPolicyPayload represents an escalation policy.
type EscalationPolicyPayload struct {
EscalationPolicy *EscalationPolicy `json:"escalation_policy"`
}

// Create creates a new escalation policy.
func (s *EscalationPolicyService) Create(escalationPolicy *EscalationPolicy) (*EscalationPolicy, *Response, error) {
u := "/escalation_policies"
v := new(EscalationPolicy)
v := new(EscalationPolicyPayload)

resp, err := s.client.newRequestDo("POST", u, nil, &EscalationPolicy{EscalationPolicy: escalationPolicy}, v)
resp, err := s.client.newRequestDo("POST", u, nil, &EscalationPolicyPayload{EscalationPolicy: escalationPolicy}, v)
if err != nil {
return nil, nil, err
}
Expand All @@ -106,7 +110,7 @@ func (s *EscalationPolicyService) Delete(id string) (*Response, error) {
// Get retrieves information about an escalation policy.
func (s *EscalationPolicyService) Get(id string, o *GetEscalationPolicyOptions) (*EscalationPolicy, *Response, error) {
u := fmt.Sprintf("/escalation_policies/%s", id)
v := new(EscalationPolicy)
v := new(EscalationPolicyPayload)

resp, err := s.client.newRequestDo("GET", u, o, nil, v)
if err != nil {
Expand All @@ -119,9 +123,9 @@ func (s *EscalationPolicyService) Get(id string, o *GetEscalationPolicyOptions)
// Update updates an existing escalation policy.
func (s *EscalationPolicyService) Update(id string, escalationPolicy *EscalationPolicy) (*EscalationPolicy, *Response, error) {
u := fmt.Sprintf("/escalation_policies/%s", id)
v := new(EscalationPolicy)
v := new(EscalationPolicyPayload)

resp, err := s.client.newRequestDo("PUT", u, nil, &EscalationPolicy{EscalationPolicy: escalationPolicy}, v)
resp, err := s.client.newRequestDo("PUT", u, nil, &EscalationPolicyPayload{EscalationPolicy: escalationPolicy}, v)
if err != nil {
return nil, nil, err
}
Expand Down
4 changes: 2 additions & 2 deletions pagerduty/escalation_policy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func TestEscalationPoliciesCreate(t *testing.T) {

mux.HandleFunc("/escalation_policies", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "POST")
v := new(EscalationPolicy)
v := new(EscalationPolicyPayload)
json.NewDecoder(r.Body).Decode(v)
if !reflect.DeepEqual(v.EscalationPolicy, input) {
t.Errorf("Request body = %+v, want %+v", v, input)
Expand Down Expand Up @@ -142,7 +142,7 @@ func TestEscalationPoliciesUpdateTeams(t *testing.T) {

mux.HandleFunc("/escalation_policies/1", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "PUT")
v := new(EscalationPolicy)
v := new(EscalationPolicyPayload)
json.NewDecoder(r.Body).Decode(v)
if !reflect.DeepEqual(v.EscalationPolicy, input) {
t.Errorf("Request body = %+v, want %+v", v, input)
Expand Down
16 changes: 10 additions & 6 deletions pagerduty/extension.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ type ExtensionService service

// Extension represents an extension.
type Extension struct {
Extension *Extension `json:"extension,omitempty"`
ID string `json:"id,omitempty"`
Summary string `json:"summary,omitempty"`
Type string `json:"type,omitempty"`
Expand Down Expand Up @@ -38,6 +37,11 @@ type ListExtensionsResponse struct {
Total int `json:"total,omitempty"`
}

// ExtensionPayload represents an extension.
type ExtensionPayload struct {
Extension *Extension `json:"extension"`
}

// List lists existing extensions.
func (s *ExtensionService) List(o *ListExtensionsOptions) (*ListExtensionsResponse, *Response, error) {
u := "/extensions"
Expand All @@ -54,9 +58,9 @@ func (s *ExtensionService) List(o *ListExtensionsOptions) (*ListExtensionsRespon
// Create creates a new extension.
func (s *ExtensionService) Create(extension *Extension) (*Extension, *Response, error) {
u := "/extensions"
v := new(Extension)
v := new(ExtensionPayload)

resp, err := s.client.newRequestDo("POST", u, nil, &Extension{Extension: extension}, v)
resp, err := s.client.newRequestDo("POST", u, nil, &ExtensionPayload{Extension: extension}, v)
if err != nil {
return nil, nil, err
}
Expand All @@ -73,7 +77,7 @@ func (s *ExtensionService) Delete(id string) (*Response, error) {
// Get retrieves information about an extension.
func (s *ExtensionService) Get(id string) (*Extension, *Response, error) {
u := fmt.Sprintf("/extensions/%s", id)
v := new(Extension)
v := new(ExtensionPayload)

resp, err := s.client.newRequestDo("GET", u, nil, nil, &v)
if err != nil {
Expand All @@ -86,8 +90,8 @@ func (s *ExtensionService) Get(id string) (*Extension, *Response, error) {
// Update updates an existing extension.
func (s *ExtensionService) Update(id string, extension *Extension) (*Extension, *Response, error) {
u := fmt.Sprintf("/extensions/%s", id)
v := new(Extension)
resp, err := s.client.newRequestDo("PUT", u, nil, &Extension{Extension: extension}, &v)
v := new(ExtensionPayload)
resp, err := s.client.newRequestDo("PUT", u, nil, &ExtensionPayload{Extension: extension}, &v)
if err != nil {
return nil, nil, err
}
Expand Down
34 changes: 19 additions & 15 deletions pagerduty/extension_schema.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,19 @@ type ExtensionSchemaService service

// ExtensionSchema represents an extension schema.
type ExtensionSchema struct {
ExtensionSchema *ExtensionSchema `json:"extension_schema,omitempty"`
Description string `json:"description,omitempty"`
GuideURL string `json:"guide_url,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
IconURL string `json:"icon_url,omitempty"`
ID string `json:"id,omitempty"`
Key string `json:"key,omitempty"`
Label string `json:"label,omitempty"`
LogoURL string `json:"logo_url,omitempty"`
Self string `json:"self,omitempty"`
SendTypes []string `json:"send_types,omitempty"`
Summary string `json:"summary,omitempty"`
Type string `json:"type,omitempty"`
URL string `json:"url,omitempty"`
Description string `json:"description,omitempty"`
GuideURL string `json:"guide_url,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
IconURL string `json:"icon_url,omitempty"`
ID string `json:"id,omitempty"`
Key string `json:"key,omitempty"`
Label string `json:"label,omitempty"`
LogoURL string `json:"logo_url,omitempty"`
Self string `json:"self,omitempty"`
SendTypes []string `json:"send_types,omitempty"`
Summary string `json:"summary,omitempty"`
Type string `json:"type,omitempty"`
URL string `json:"url,omitempty"`
}

// ListExtensionSchemasResponse represents a list response of extension schemas.
Expand All @@ -41,6 +40,11 @@ type ListExtensionSchemasOptions struct {
Query string `url:"query,omitempty"`
}

// ExtensionSchemaPayload represents an extension schema.
type ExtensionSchemaPayload struct {
ExtensionSchema *ExtensionSchema `json:"extension_schema"`
}

// List lists extension schemas.
func (s *ExtensionSchemaService) List(o *ListExtensionSchemasOptions) (*ListExtensionSchemasResponse, *Response, error) {
u := "/extension_schemas"
Expand All @@ -57,7 +61,7 @@ func (s *ExtensionSchemaService) List(o *ListExtensionSchemasOptions) (*ListExte
// Get retrieves information about an extension schema.
func (s *ExtensionSchemaService) Get(id string) (*ExtensionSchema, *Response, error) {
u := fmt.Sprintf("/extension_schemas/%s", id)
v := new(ExtensionSchema)
v := new(ExtensionSchemaPayload)

resp, err := s.client.newRequestDo("GET", u, nil, nil, &v)
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion pagerduty/extension_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func TestExtensionsCreate(t *testing.T) {

mux.HandleFunc("/extensions", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "POST")
v := new(Extension)
v := new(ExtensionPayload)
json.NewDecoder(r.Body).Decode(v)
if !reflect.DeepEqual(v.Extension, input) {
t.Errorf("Request body = %+v, want %+v", v, input)
Expand Down
42 changes: 23 additions & 19 deletions pagerduty/maintenance_window.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,19 @@ type MaintenanceWindowService service

// MaintenanceWindow represents a PagerDuty maintenance window.
type MaintenanceWindow struct {
CreatedBy *UserReference `json:"created_by,omitempty"`
Description string `json:"description,omitempty"`
EndTime string `json:"end_time,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
ID string `json:"id,omitempty"`
MaintenanceWindow *MaintenanceWindow `json:"maintenance_window,omitempty"`
Self string `json:"self,omitempty"`
SequenceNumber int `json:"sequence_number,omitempty"`
Services []*ServiceReference `json:"services,omitempty"`
Src string `json:"src,omitempty"`
StartTime string `json:"start_time,omitempty"`
Summary string `json:"summary,omitempty"`
Teams []*TeamReference `json:"teams,omitempty"`
Type string `json:"type,omitempty"`
CreatedBy *UserReference `json:"created_by,omitempty"`
Description string `json:"description,omitempty"`
EndTime string `json:"end_time,omitempty"`
HTMLURL string `json:"html_url,omitempty"`
ID string `json:"id,omitempty"`
Self string `json:"self,omitempty"`
SequenceNumber int `json:"sequence_number,omitempty"`
Services []*ServiceReference `json:"services,omitempty"`
Src string `json:"src,omitempty"`
StartTime string `json:"start_time,omitempty"`
Summary string `json:"summary,omitempty"`
Teams []*TeamReference `json:"teams,omitempty"`
Type string `json:"type,omitempty"`
}

// ListMaintenanceWindowsOptions represents options when listing maintenance windows.
Expand All @@ -42,6 +41,11 @@ type ListMaintenanceWindowsResponse struct {
Total int `json:"total,omitempty"`
}

// MaintenanceWindowPayload represents a maintenance window.
type MaintenanceWindowPayload struct {
MaintenanceWindow *MaintenanceWindow `json:"maintenance_window,omitempty"`
}

// List lists existing maintenance windows.
func (s *MaintenanceWindowService) List(o *ListMaintenanceWindowsOptions) (*ListMaintenanceWindowsResponse, *Response, error) {
u := "/maintenance_windows"
Expand All @@ -58,9 +62,9 @@ func (s *MaintenanceWindowService) List(o *ListMaintenanceWindowsOptions) (*List
// Create creates a new maintenancce window.
func (s *MaintenanceWindowService) Create(maintenanceWindow *MaintenanceWindow) (*MaintenanceWindow, *Response, error) {
u := "/maintenance_windows"
v := new(MaintenanceWindow)
v := new(MaintenanceWindowPayload)

resp, err := s.client.newRequestDo("POST", u, nil, &MaintenanceWindow{MaintenanceWindow: maintenanceWindow}, v)
resp, err := s.client.newRequestDo("POST", u, nil, &MaintenanceWindowPayload{MaintenanceWindow: maintenanceWindow}, v)
if err != nil {
return nil, nil, err
}
Expand All @@ -77,7 +81,7 @@ func (s *MaintenanceWindowService) Delete(id string) (*Response, error) {
// Get retrieves information about a maintenance window.
func (s *MaintenanceWindowService) Get(id string) (*MaintenanceWindow, *Response, error) {
u := fmt.Sprintf("/maintenance_windows/%s", id)
v := new(MaintenanceWindow)
v := new(MaintenanceWindowPayload)

resp, err := s.client.newRequestDo("GET", u, nil, nil, &v)
if err != nil {
Expand All @@ -90,8 +94,8 @@ func (s *MaintenanceWindowService) Get(id string) (*MaintenanceWindow, *Response
// Update updates an existing maintenance window.
func (s *MaintenanceWindowService) Update(id string, maintenanceWindow *MaintenanceWindow) (*MaintenanceWindow, *Response, error) {
u := fmt.Sprintf("/maintenance_windows/%s", id)
v := new(MaintenanceWindow)
resp, err := s.client.newRequestDo("PUT", u, nil, &MaintenanceWindow{MaintenanceWindow: maintenanceWindow}, &v)
v := new(MaintenanceWindowPayload)
resp, err := s.client.newRequestDo("PUT", u, nil, &MaintenanceWindowPayload{MaintenanceWindow: maintenanceWindow}, &v)
if err != nil {
return nil, nil, err
}
Expand Down
2 changes: 1 addition & 1 deletion pagerduty/maintenance_window_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func TestMaintenanceWindowsCreate(t *testing.T) {

mux.HandleFunc("/maintenance_windows", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "POST")
v := new(MaintenanceWindow)
v := new(MaintenanceWindowPayload)
json.NewDecoder(r.Body).Decode(v)
if !reflect.DeepEqual(v.MaintenanceWindow, input) {
t.Errorf("Request body = %+v, want %+v", v, input)
Expand Down
Loading