-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathencoding_outputs_akamai_msl_api.go
93 lines (75 loc) · 3.4 KB
/
encoding_outputs_akamai_msl_api.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
92
93
package api
import (
"github.com/bitmovin/bitmovin-api-sdk-go/apiclient"
"github.com/bitmovin/bitmovin-api-sdk-go/model"
"github.com/bitmovin/bitmovin-api-sdk-go/pagination"
)
// EncodingOutputsAkamaiMslAPI communicates with '/encoding/outputs/akamai-msl' endpoints
type EncodingOutputsAkamaiMslAPI struct {
apiClient *apiclient.APIClient
// Customdata communicates with '/encoding/outputs/akamai-msl/{output_id}/customData' endpoints
Customdata *EncodingOutputsAkamaiMslCustomdataAPI
}
// NewEncodingOutputsAkamaiMslAPI constructor for EncodingOutputsAkamaiMslAPI that takes options as argument
func NewEncodingOutputsAkamaiMslAPI(options ...apiclient.APIClientOption) (*EncodingOutputsAkamaiMslAPI, error) {
apiClient, err := apiclient.NewAPIClient(options...)
if err != nil {
return nil, err
}
return NewEncodingOutputsAkamaiMslAPIWithClient(apiClient), nil
}
// NewEncodingOutputsAkamaiMslAPIWithClient constructor for EncodingOutputsAkamaiMslAPI that takes an APIClient as argument
func NewEncodingOutputsAkamaiMslAPIWithClient(apiClient *apiclient.APIClient) *EncodingOutputsAkamaiMslAPI {
a := &EncodingOutputsAkamaiMslAPI{apiClient: apiClient}
a.Customdata = NewEncodingOutputsAkamaiMslCustomdataAPIWithClient(apiClient)
return a
}
// Create Akamai MSL Output
func (api *EncodingOutputsAkamaiMslAPI) Create(akamaiMslOutput model.AkamaiMslOutput) (*model.AkamaiMslOutput, error) {
reqParams := func(params *apiclient.RequestParams) {
}
var responseModel model.AkamaiMslOutput
err := api.apiClient.Post("/encoding/outputs/akamai-msl", &akamaiMslOutput, &responseModel, reqParams)
return &responseModel, err
}
// Delete Akamai MSL Output
func (api *EncodingOutputsAkamaiMslAPI) Delete(outputId string) (*model.BitmovinResponse, error) {
reqParams := func(params *apiclient.RequestParams) {
params.PathParams["output_id"] = outputId
}
var responseModel model.BitmovinResponse
err := api.apiClient.Delete("/encoding/outputs/akamai-msl/{output_id}", nil, &responseModel, reqParams)
return &responseModel, err
}
// Get Akamai MSL Output Details
func (api *EncodingOutputsAkamaiMslAPI) Get(outputId string) (*model.AkamaiMslOutput, error) {
reqParams := func(params *apiclient.RequestParams) {
params.PathParams["output_id"] = outputId
}
var responseModel model.AkamaiMslOutput
err := api.apiClient.Get("/encoding/outputs/akamai-msl/{output_id}", nil, &responseModel, reqParams)
return &responseModel, err
}
// List Akamai MSL Outputs
func (api *EncodingOutputsAkamaiMslAPI) List(queryParams ...func(*EncodingOutputsAkamaiMslAPIListQueryParams)) (*pagination.AkamaiMslOutputsListPagination, error) {
queryParameters := &EncodingOutputsAkamaiMslAPIListQueryParams{}
for _, queryParam := range queryParams {
queryParam(queryParameters)
}
reqParams := func(params *apiclient.RequestParams) {
params.QueryParams = queryParameters
}
var responseModel pagination.AkamaiMslOutputsListPagination
err := api.apiClient.Get("/encoding/outputs/akamai-msl", nil, &responseModel, reqParams)
return &responseModel, err
}
// EncodingOutputsAkamaiMslAPIListQueryParams contains all query parameters for the List endpoint
type EncodingOutputsAkamaiMslAPIListQueryParams struct {
Offset int32 `query:"offset"`
Limit int32 `query:"limit"`
Name string `query:"name"`
}
// Params will return a map of query parameters
func (q *EncodingOutputsAkamaiMslAPIListQueryParams) Params() map[string]string {
return apiclient.GetParamsMap(q)
}