Rename root, api and sdk module paths (imports, go.mod, go_package, ldflags, build scripts, buf configs) and regenerate protobuf/gateway code with the project's pinned toolchain. Wire identifiers unchanged. api gets a local replace for sdk; root/api/sdk require v0.1.0. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
67 lines
2.6 KiB
Go
67 lines
2.6 KiB
Go
// Copyright IBM Corp. 2020, 2026
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
package users
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"net/url"
|
|
|
|
"repo.anhonesthost.net/CyberCoveLLC/threshold/api/aliases"
|
|
)
|
|
|
|
// ListResolvableAliases builds and sends a request to the API for listing
|
|
// resolvable aliases for the specified user. It retrieves all remaining pages
|
|
// and includes in the result the list token for paginating through future
|
|
// updates. To use the list token use the users.WithListToken option.
|
|
func (c *Client) ListResolvableAliases(ctx context.Context, userId string, opt ...Option) (*aliases.AliasListResult, error) {
|
|
if userId == "" {
|
|
return nil, fmt.Errorf("empty userId value passed into ListResolvableAliases request")
|
|
}
|
|
if c.client == nil {
|
|
return nil, fmt.Errorf("nil client")
|
|
}
|
|
|
|
opts, _ := getOpts(opt...)
|
|
apiClient := aliases.NewClient(c.client)
|
|
return apiClient.List(ctx, "global",
|
|
aliases.WithAutomaticVersioning(opts.withAutomaticVersioning),
|
|
aliases.WithSkipCurlOutput(opts.withSkipCurlOutput),
|
|
aliases.WithFilter(opts.withFilter),
|
|
aliases.WithListToken(opts.withListToken),
|
|
aliases.WithClientDirectedPagination(opts.withClientDirectedPagination),
|
|
aliases.WithPageSize(opts.withPageSize),
|
|
aliases.WithRecursive(opts.withRecursive),
|
|
aliases.WithResourcePathOverride(fmt.Sprintf("users/%s:list-resolvable-aliases", url.PathEscape(userId))),
|
|
)
|
|
}
|
|
|
|
func (c *Client) ListResolvableAliasesNextPage(ctx context.Context, userId string, currentPage *aliases.AliasListResult, opt ...Option) (*aliases.AliasListResult, error) {
|
|
if currentPage == nil {
|
|
return nil, fmt.Errorf("empty currentPage value passed into ListResolvableAliasesNextPage request")
|
|
}
|
|
if userId == "" {
|
|
return nil, fmt.Errorf("empty userId value passed into ListResolvableAliasesNextPage request")
|
|
}
|
|
if c.client == nil {
|
|
return nil, fmt.Errorf("nil client")
|
|
}
|
|
if currentPage.ResponseType == "complete" || currentPage.ResponseType == "" {
|
|
return nil, fmt.Errorf("no more pages available in ListResolvableAliasesNextPage request")
|
|
}
|
|
|
|
opts, _ := getOpts(opt...)
|
|
apiClient := aliases.NewClient(c.client)
|
|
return apiClient.ListNextPage(ctx, currentPage,
|
|
aliases.WithAutomaticVersioning(opts.withAutomaticVersioning),
|
|
aliases.WithSkipCurlOutput(opts.withSkipCurlOutput),
|
|
aliases.WithFilter(opts.withFilter),
|
|
aliases.WithListToken(opts.withListToken),
|
|
aliases.WithClientDirectedPagination(opts.withClientDirectedPagination),
|
|
aliases.WithPageSize(opts.withPageSize),
|
|
aliases.WithRecursive(opts.withRecursive),
|
|
aliases.WithResourcePathOverride(fmt.Sprintf("users/%s:list-resolvable-aliases", url.PathEscape(userId))),
|
|
)
|
|
}
|