@@ -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
1112var internalProxy * greetingProxy
13+ var internalProxyOnce sync.Once
1214
1315type getAllGreetingsFunc func (ctx context.Context , p * greetingProxy ) (* []platformclientv2.Domainentity , * platformclientv2.APIResponse , error )
1416type 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
4244func 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