Skip to content

Commit c7ccc23

Browse files
Merge pull request #74 from G-Core/feature/CDI-980-tf-provider-should-have-cname-attribute
CDI-980: add ClientsMe service
2 parents fb04024 + 18395c4 commit c7ccc23

File tree

3 files changed

+48
-0
lines changed

3 files changed

+48
-0
lines changed

client.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package gcdn
22

33
import (
44
"github.com/G-Core/gcorelabscdn-go/cacerts"
5+
"github.com/G-Core/gcorelabscdn-go/clients"
56
"github.com/G-Core/gcorelabscdn-go/gcore"
67
"github.com/G-Core/gcorelabscdn-go/origingroups"
78
"github.com/G-Core/gcorelabscdn-go/originshielding"
@@ -21,6 +22,7 @@ type ClientService interface {
2122
Presets() presets.PresetsService
2223
CACerts() cacerts.CACertService
2324
RuleTemplates() ruletemplates.RuleTemplateService
25+
ClientsMe() clients.ClientsMeService
2426
}
2527

2628
var _ ClientService = (*Service)(nil)
@@ -35,6 +37,7 @@ type Service struct {
3537
presetsService presets.PresetsService
3638
caCertsService cacerts.CACertService
3739
ruleTemplatesService ruletemplates.RuleTemplateService
40+
clientsMeService clients.ClientsMeService
3841
}
3942

4043
func NewService(r gcore.Requester) *Service {
@@ -48,6 +51,7 @@ func NewService(r gcore.Requester) *Service {
4851
presetsService: presets.NewService(r),
4952
caCertsService: cacerts.NewService(r),
5053
ruleTemplatesService: ruletemplates.NewService(r),
54+
clientsMeService: clients.NewService(r),
5155
}
5256
}
5357

@@ -82,3 +86,7 @@ func (s *Service) CACerts() cacerts.CACertService {
8286
func (s *Service) RuleTemplates() ruletemplates.RuleTemplateService {
8387
return s.ruleTemplatesService
8488
}
89+
90+
func (s *Service) ClientsMe() clients.ClientsMeService {
91+
return s.clientsMeService
92+
}

clients/clients.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package clients
2+
3+
import (
4+
"context"
5+
)
6+
7+
type ClientsMeService interface {
8+
Get(ctx context.Context) (*ClientsMe, error)
9+
}
10+
11+
type ClientsMe struct {
12+
ID int64 `json:"id"`
13+
Cname string `json:"cname"`
14+
}

clients/service.go

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package clients
2+
3+
import (
4+
"context"
5+
"fmt"
6+
"net/http"
7+
8+
"github.com/G-Core/gcorelabscdn-go/gcore"
9+
)
10+
11+
type Service struct {
12+
r gcore.Requester
13+
}
14+
15+
func NewService(r gcore.Requester) *Service {
16+
return &Service{r: r}
17+
}
18+
19+
func (s *Service) Get(ctx context.Context) (*ClientsMe, error) {
20+
var client ClientsMe
21+
if err := s.r.Request(ctx, http.MethodGet, "/cdn/clients/me", nil, &client); err != nil {
22+
return nil, fmt.Errorf("request: %w", err)
23+
}
24+
25+
return &client, nil
26+
}

0 commit comments

Comments
 (0)