Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions sdk/data/azcosmos/cosmos_client.go
Original file line number Diff line number Diff line change
Expand Up @@ -246,11 +246,11 @@ func (c *Client) NewQueryDatabasesPager(query string, o *QueryDatabasesOptions)

return azruntime.NewPager(azruntime.PagingHandler[QueryDatabasesResponse]{
More: func(page QueryDatabasesResponse) bool {
return page.ContinuationToken != ""
return page.ContinuationToken != nil
},
Fetcher: func(ctx context.Context, page *QueryDatabasesResponse) (QueryDatabasesResponse, error) {
if page != nil {
if page.ContinuationToken != "" {
if page.ContinuationToken != nil {
// Use the previous page continuation if available
queryOptions.ContinuationToken = page.ContinuationToken
}
Expand Down
8 changes: 4 additions & 4 deletions sdk/data/azcosmos/cosmos_container_request_options.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ func (options *DeleteContainerOptions) toHeaders() *map[string]string {
// QueryContainersOptions are options to query containers
type QueryContainersOptions struct {
// ContinuationToken to be used to continue a previous query execution.
// Obtained from QueryItemsResponse.ContinuationToken.
ContinuationToken string
// Obtained from QueryContainersResponse.ContinuationToken.
ContinuationToken *string

// QueryParameters allows execution of parametrized queries.
// See https://docs.microsoft.com/azure/cosmos-db/sql/sql-query-parameterized-queries
Expand All @@ -55,8 +55,8 @@ type QueryContainersOptions struct {
func (options *QueryContainersOptions) toHeaders() *map[string]string {
headers := make(map[string]string)

if options.ContinuationToken != "" {
headers[cosmosHeaderContinuationToken] = options.ContinuationToken
if options.ContinuationToken != nil {
headers[cosmosHeaderContinuationToken] = *options.ContinuationToken
}

return &headers
Expand Down
4 changes: 2 additions & 2 deletions sdk/data/azcosmos/cosmos_database.go
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,11 @@ func (c *DatabaseClient) NewQueryContainersPager(query string, o *QueryContainer

return runtime.NewPager(runtime.PagingHandler[QueryContainersResponse]{
More: func(page QueryContainersResponse) bool {
return page.ContinuationToken != ""
return page.ContinuationToken != nil
},
Fetcher: func(ctx context.Context, page *QueryContainersResponse) (QueryContainersResponse, error) {
if page != nil {
if page.ContinuationToken != "" {
if page.ContinuationToken != nil {
// Use the previous page continuation if available
queryOptions.ContinuationToken = page.ContinuationToken
}
Expand Down
8 changes: 4 additions & 4 deletions sdk/data/azcosmos/cosmos_database_request_options.go
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ type CreateDatabaseOptions struct {
// QueryDatabasesOptions are options to query databases
type QueryDatabasesOptions struct {
// ContinuationToken to be used to continue a previous query execution.
// Obtained from QueryItemsResponse.ContinuationToken.
ContinuationToken string
// Obtained from QueryDatabasesResponse.ContinuationToken.
ContinuationToken *string

// QueryParameters allows execution of parametrized queries.
// See https://docs.microsoft.com/azure/cosmos-db/sql/sql-query-parameterized-queries
Expand All @@ -69,8 +69,8 @@ type QueryDatabasesOptions struct {
func (options *QueryDatabasesOptions) toHeaders() *map[string]string {
headers := make(map[string]string)

if options.ContinuationToken != "" {
headers[cosmosHeaderContinuationToken] = options.ContinuationToken
if options.ContinuationToken != nil {
headers[cosmosHeaderContinuationToken] = *options.ContinuationToken
}

return &headers
Expand Down
15 changes: 10 additions & 5 deletions sdk/data/azcosmos/cosmos_query_response.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ type QueryContainersResponse struct {
Response
// ContinuationToken contains the value of the x-ms-continuation header in the response.
// It can be used to stop a query and resume it later.
ContinuationToken string
ContinuationToken *string
// List of containers.
Containers []ContainerProperties
}
Expand All @@ -79,8 +79,10 @@ func newContainersQueryResponse(resp *http.Response) (QueryContainersResponse, e
Response: newResponse(resp),
}

response.ContinuationToken = resp.Header.Get(cosmosHeaderContinuationToken)

continuationToken := resp.Header.Get(cosmosHeaderContinuationToken)
if continuationToken != "" {
response.ContinuationToken = &continuationToken
}
result := queryContainersServiceResponse{}
if err := runtime.UnmarshalAsJSON(resp, &result); err != nil {
return QueryContainersResponse{}, err
Expand All @@ -100,7 +102,7 @@ type QueryDatabasesResponse struct {
Response
// ContinuationToken contains the value of the x-ms-continuation header in the response.
// It can be used to stop a query and resume it later.
ContinuationToken string
ContinuationToken *string
// List of databases.
Databases []DatabaseProperties
}
Expand All @@ -110,7 +112,10 @@ func newDatabasesQueryResponse(resp *http.Response) (QueryDatabasesResponse, err
Response: newResponse(resp),
}

response.ContinuationToken = resp.Header.Get(cosmosHeaderContinuationToken)
continuationToken := resp.Header.Get(cosmosHeaderContinuationToken)
if continuationToken != "" {
response.ContinuationToken = &continuationToken
}

result := queryDatabasesServiceResponse{}
if err := runtime.UnmarshalAsJSON(resp, &result); err != nil {
Expand Down