This repository has been archived by the owner on Jun 1, 2023. It is now read-only.
/
collector_configuration_input.go
91 lines (83 loc) · 3.01 KB
/
collector_configuration_input.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package client
import (
"context"
"fmt"
"github.com/suzuki-shunsuke/go-graylog"
)
// CreateCollectorConfigurationInput creates a collector configuration input.
func (client *Client) CreateCollectorConfigurationInput(
id string, input *graylog.CollectorConfigurationInput,
) (*ErrorInfo, error) {
return client.CreateCollectorConfigurationInputContext(
context.Background(), id, input)
}
// CreateCollectorConfigurationInputContext creates a collector configuration input with a context.
func (client *Client) CreateCollectorConfigurationInputContext(
ctx context.Context, id string, input *graylog.CollectorConfigurationInput,
) (*ErrorInfo, error) {
// POST /plugins/org.graylog.plugins.collector/configurations/{id}/inputs Create a configuration input
if id == "" {
return nil, fmt.Errorf("id is required")
}
if input == nil {
return nil, fmt.Errorf("collector configuration is nil")
}
u, err := client.Endpoints().CollectorConfigurationInputs(id)
if err != nil {
return nil, err
}
// 202 no content
return client.callPost(ctx, u.String(), input, nil)
}
// DeleteCollectorConfigurationInput deletes a collector configuration input.
func (client *Client) DeleteCollectorConfigurationInput(id, inputID string) (*ErrorInfo, error) {
return client.DeleteCollectorConfigurationInputContext(
context.Background(), id, inputID)
}
// DeleteCollectorConfigurationInputContext deletes a collector configuration input with a context.
func (client *Client) DeleteCollectorConfigurationInputContext(
ctx context.Context, id, inputID string,
) (*ErrorInfo, error) {
// DELETE /plugins/org.graylog.plugins.collector/configurations/{id}/inputs/{inputId} Delete input form configuration
if id == "" {
return nil, fmt.Errorf("id is required")
}
if inputID == "" {
return nil, fmt.Errorf("input id is required")
}
u, err := client.Endpoints().CollectorConfigurationInput(id, inputID)
if err != nil {
return nil, err
}
return client.callDelete(
ctx, u.String(), nil, nil)
}
// UpdateCollectorConfigurationInput updates a collector configuration input.
func (client *Client) UpdateCollectorConfigurationInput(
id, inputID string, input *graylog.CollectorConfigurationInput,
) (*ErrorInfo, error) {
return client.UpdateCollectorConfigurationInputContext(
context.Background(), id, inputID, input)
}
// UpdateCollectorConfigurationInputContext updates a collector configuration input with a context.
func (client *Client) UpdateCollectorConfigurationInputContext(
ctx context.Context, id, inputID string,
input *graylog.CollectorConfigurationInput,
) (*ErrorInfo, error) {
// PUT /plugins/org.graylog.plugins.collector/configurations/{id}/inputs/{input_id} Update a configuration input
if id == "" {
return nil, fmt.Errorf("id is required")
}
if inputID == "" {
return nil, fmt.Errorf("input id is required")
}
if input == nil {
return nil, fmt.Errorf("input is nil")
}
u, err := client.Endpoints().CollectorConfigurationInput(id, inputID)
if err != nil {
return nil, err
}
return client.callPut(
ctx, u.String(), input, nil)
}