This repository has been archived by the owner on Jun 1, 2023. It is now read-only.
/
collector_configuration_snippet.go
90 lines (82 loc) · 3.11 KB
/
collector_configuration_snippet.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
package client
import (
"context"
"fmt"
"github.com/suzuki-shunsuke/go-graylog"
)
// CreateCollectorConfigurationSnippet creates a collector configuration snippet.
func (client *Client) CreateCollectorConfigurationSnippet(
id string, snippet *graylog.CollectorConfigurationSnippet,
) (*ErrorInfo, error) {
return client.CreateCollectorConfigurationSnippetContext(
context.Background(), id, snippet)
}
// CreateCollectorConfigurationSnippetContext creates a collector configuration snippet with a context.
func (client *Client) CreateCollectorConfigurationSnippetContext(
ctx context.Context, id string, snippet *graylog.CollectorConfigurationSnippet,
) (*ErrorInfo, error) {
// POST /plugins/org.graylog.plugins.collector/configurations/{id}/snippets Create a configuration snippet
if id == "" {
return nil, fmt.Errorf("id is required")
}
if snippet == nil {
return nil, fmt.Errorf("collector configuration is nil")
}
u, err := client.Endpoints().CollectorConfigurationSnippets(id)
if err != nil {
return nil, err
}
return client.callPost(ctx, u.String(), snippet, nil)
}
// DeleteCollectorConfigurationSnippet deletes a collector configuration snippet.
func (client *Client) DeleteCollectorConfigurationSnippet(id, snippetID string) (*ErrorInfo, error) {
return client.DeleteCollectorConfigurationSnippetContext(
context.Background(), id, snippetID)
}
// DeleteCollectorConfigurationSnippetContext deletes a collector configuration snippet with a context.
func (client *Client) DeleteCollectorConfigurationSnippetContext(
ctx context.Context, id, snippetID string,
) (*ErrorInfo, error) {
// DELETE /plugins/org.graylog.plugins.collector/configurations/{id}/snippets/{snippetId} Delete snippet form configuration
if id == "" {
return nil, fmt.Errorf("id is required")
}
if snippetID == "" {
return nil, fmt.Errorf("snippet id is required")
}
u, err := client.Endpoints().CollectorConfigurationSnippet(id, snippetID)
if err != nil {
return nil, err
}
return client.callDelete(
ctx, u.String(), nil, nil)
}
// UpdateCollectorConfigurationSnippet updates a collector configuration snippet.
func (client *Client) UpdateCollectorConfigurationSnippet(
id, snippetID string, snippet *graylog.CollectorConfigurationSnippet,
) (*ErrorInfo, error) {
return client.UpdateCollectorConfigurationSnippetContext(
context.Background(), id, snippetID, snippet)
}
// UpdateCollectorConfigurationSnippetContext updates a collector configuration snippet with a context.
func (client *Client) UpdateCollectorConfigurationSnippetContext(
ctx context.Context, id, snippetID string,
snippet *graylog.CollectorConfigurationSnippet,
) (*ErrorInfo, error) {
// PUT /plugins/org.graylog.plugins.collector/configurations/{id}/snippets/{snippet_id} Update a configuration snippet
if id == "" {
return nil, fmt.Errorf("id is required")
}
if snippetID == "" {
return nil, fmt.Errorf("snippet id is required")
}
if snippet == nil {
return nil, fmt.Errorf("snippet is nil")
}
u, err := client.Endpoints().CollectorConfigurationSnippet(id, snippetID)
if err != nil {
return nil, err
}
return client.callPut(
ctx, u.String(), snippet, nil)
}