Skip to content

Commit 190818d

Browse files
fixed outlined issues
1 parent 51ebcee commit 190818d

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

genesyscloud/greeting/genesyscloud_greeting_proxy.go

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@ import (
44
"context"
55
"fmt"
66
"net/http"
7+
"sync"
78

89
"github.com/mypurecloud/platform-client-sdk-go/v176/platformclientv2"
910
)
1011

1112
var internalProxy *greetingProxy
13+
var internalProxyOnce sync.Once
1214

1315
type getAllGreetingsFunc func(ctx context.Context, p *greetingProxy) (*[]platformclientv2.Domainentity, *platformclientv2.APIResponse, error)
1416
type getGreetingByIdFunc func(ctx context.Context, p *greetingProxy, id string) (*platformclientv2.Greeting, *platformclientv2.APIResponse, error)
@@ -40,10 +42,9 @@ func newGreetingProxy(clientConfig *platformclientv2.Configuration) *greetingPro
4042
}
4143

4244
func getGreetingProxy(clientConfig *platformclientv2.Configuration) *greetingProxy {
43-
if internalProxy == nil {
45+
internalProxyOnce.Do(func() {
4446
internalProxy = newGreetingProxy(clientConfig)
45-
}
46-
47+
})
4748
return internalProxy
4849
}
4950

@@ -73,7 +74,12 @@ func getAllGreetingsFn(ctx context.Context, p *greetingProxy) (*[]platformclient
7374
if orgGreetings.Entities != nil {
7475
allGreetings = append(allGreetings, *orgGreetings.Entities...)
7576
}
76-
for pageNum := 2; pageNum <= *orgGreetings.PageCount; pageNum++ {
77+
78+
pageCount := 1
79+
if orgGreetings != nil && orgGreetings.PageCount != nil {
80+
pageCount = *orgGreetings.PageCount
81+
}
82+
for pageNum := 2; pageNum <= pageCount; pageNum++ {
7783
orgGreetings, resp, err := p.greetingsApi.GetGreetings(pageSize, pageNum)
7884
if err != nil {
7985
return nil, resp, fmt.Errorf("failed to get greetings %s", err)
@@ -115,7 +121,11 @@ func getGreetingFromOrganization(ctx context.Context, p *greetingProxy, id strin
115121
return true, resp, nil
116122
}
117123

118-
for pageNum := 2; pageNum <= *orgGreetings.PageCount; pageNum++ {
124+
pageCount := 1
125+
if orgGreetings != nil && orgGreetings.PageCount != nil {
126+
pageCount = *orgGreetings.PageCount
127+
}
128+
for pageNum := 2; pageNum <= pageCount; pageNum++ {
119129
orgGreetings, resp, err = p.greetingsApi.GetGreetings(pageSize, pageNum)
120130
if err != nil {
121131
return false, resp, err

0 commit comments

Comments
 (0)