Google Cloud Data Catalog API v1 - Package cloud.google.com/go/datacatalog/apiv1 (v0.82.0)

Package datacatalog is an auto-generated package for the Google Cloud Data Catalog API.

A fully managed and highly scalable data discovery and metadata management service.

Use of Context

The ctx passed to NewClient is used for authentication requests and for creating the underlying connection, but is not used for subsequent calls. Individual methods on the client use the ctx given to them.

To close the open connection, use the Close() method.

For information about setting deadlines, reusing contexts, and more please visit pkg.go.dev/cloud.google.com/go.

Functions

func DefaultAuthScopes

func DefaultAuthScopes() []string

DefaultAuthScopes reports the default set of authentication scopes to use with this package.

CallOptions

type CallOptions struct {
	SearchCatalog                   []gax.CallOption
	CreateEntryGroup                []gax.CallOption
	GetEntryGroup                   []gax.CallOption
	UpdateEntryGroup                []gax.CallOption
	DeleteEntryGroup                []gax.CallOption
	ListEntryGroups                 []gax.CallOption
	CreateEntry                     []gax.CallOption
	UpdateEntry                     []gax.CallOption
	DeleteEntry                     []gax.CallOption
	GetEntry                        []gax.CallOption
	LookupEntry                     []gax.CallOption
	ListEntries                     []gax.CallOption
	CreateTagTemplate               []gax.CallOption
	GetTagTemplate                  []gax.CallOption
	UpdateTagTemplate               []gax.CallOption
	DeleteTagTemplate               []gax.CallOption
	CreateTagTemplateField          []gax.CallOption
	UpdateTagTemplateField          []gax.CallOption
	RenameTagTemplateField          []gax.CallOption
	RenameTagTemplateFieldEnumValue []gax.CallOption
	DeleteTagTemplateField          []gax.CallOption
	CreateTag                       []gax.CallOption
	UpdateTag                       []gax.CallOption
	DeleteTag                       []gax.CallOption
	ListTags                        []gax.CallOption
	SetIamPolicy                    []gax.CallOption
	GetIamPolicy                    []gax.CallOption
	TestIamPermissions              []gax.CallOption
}

CallOptions contains the retry settings for each method of Client.

Client

type Client struct {

	// The call options for this service.
	CallOptions *CallOptions
	// contains filtered or unexported fields
}

Client is a client for interacting with Google Cloud Data Catalog API.

Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.

func NewClient

func NewClient(ctx context.Context, opts ...option.ClientOption) (*Client, error)

NewClient creates a new data catalog client.

Data Catalog API service allows clients to discover, understand, and manage their data.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use client.
	_ = c
}

func (*Client) Close

func (c *Client) Close() error

Close closes the connection to the API service. The user should invoke this when the client is no longer required.

func (*Client) Connection

func (c *Client) Connection() *grpc.ClientConn

Connection returns a connection to the API service.

Deprecated.

func (*Client) CreateEntry

CreateEntry creates an entry. Only entries of types ‘FILESET’, ‘CLUSTER’, ‘DATA_STREAM’ or with a user-specified type can be created.

Users should enable the Data Catalog API in the project identified by the parent parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

A maximum of 100,000 entries may be created per entry group.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreateEntryRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreateEntry(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) CreateEntryGroup

CreateEntryGroup creates an EntryGroup.

An entry group contains logically related entries together with Cloud Identity and Access Management policies that specify the users who can create, edit, and view entries within the entry group.

Data Catalog automatically creates an entry group for BigQuery entries (“@bigquery”) and Pub/Sub topics ("@pubsub"). Users create their own entry group to contain Cloud Storage fileset entries or custom type entries, and the IAM policies associated with those entries. Entry groups, like entries, can be searched.

A maximum of 10,000 entry groups may be created per organization across all locations.

Users should enable the Data Catalog API in the project identified by the parent parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreateEntryGroupRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreateEntryGroup(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) CreateTag

CreateTag creates a tag on an Entry. Note: The project identified by the parent parameter for the tag (at https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries.tags/create#path-parameters) and the tag template (at https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.tagTemplates/create#path-parameters) used to create the tag must be from the same organization.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreateTagRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreateTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) CreateTagTemplate

CreateTagTemplate creates a tag template. The user should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreateTagTemplateRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreateTagTemplate(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) CreateTagTemplateField

CreateTagTemplateField creates a field in a tag template. The user should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreateTagTemplateFieldRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreateTagTemplateField(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) DeleteEntry

func (c *Client) DeleteEntry(ctx context.Context, req *datacatalogpb.DeleteEntryRequest, opts ...gax.CallOption) error

DeleteEntry deletes an existing entry. Only entries created through CreateEntry method can be deleted. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeleteEntryRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeleteEntry(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*Client) DeleteEntryGroup

func (c *Client) DeleteEntryGroup(ctx context.Context, req *datacatalogpb.DeleteEntryGroupRequest, opts ...gax.CallOption) error

DeleteEntryGroup deletes an EntryGroup. Only entry groups that do not contain entries can be deleted. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeleteEntryGroupRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeleteEntryGroup(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*Client) DeleteTag

func (c *Client) DeleteTag(ctx context.Context, req *datacatalogpb.DeleteTagRequest, opts ...gax.CallOption) error

DeleteTag deletes a tag.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeleteTagRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeleteTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*Client) DeleteTagTemplate

func (c *Client) DeleteTagTemplate(ctx context.Context, req *datacatalogpb.DeleteTagTemplateRequest, opts ...gax.CallOption) error

DeleteTagTemplate deletes a tag template and all tags using the template. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeleteTagTemplateRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeleteTagTemplate(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*Client) DeleteTagTemplateField

func (c *Client) DeleteTagTemplateField(ctx context.Context, req *datacatalogpb.DeleteTagTemplateFieldRequest, opts ...gax.CallOption) error

DeleteTagTemplateField deletes a field in a tag template and all uses of that field. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeleteTagTemplateFieldRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeleteTagTemplateField(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*Client) GetEntry

GetEntry gets an entry.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.GetEntryRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetEntry(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) GetEntryGroup

GetEntryGroup gets an EntryGroup.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.GetEntryGroupRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetEntryGroup(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) GetIamPolicy

func (c *Client) GetIamPolicy(ctx context.Context, req *iampb.GetIamPolicyRequest, opts ...gax.CallOption) (*iampb.Policy, error)

GetIamPolicy gets the access control policy for a resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.

Supported resources are:

Tag templates.

Entries.

Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

Callers must have following Google IAM permission

datacatalog.tagTemplates.getIamPolicy to get policies on tag templates.

datacatalog.entries.getIamPolicy to get policies on entries.

datacatalog.entryGroups.getIamPolicy to get policies on entry groups.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	iampb "google.golang.org/genproto/googleapis/iam/v1"
)

func main() {
	// import iampb "google.golang.org/genproto/googleapis/iam/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &iampb.GetIamPolicyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetIamPolicy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) GetTagTemplate

GetTagTemplate gets a tag template.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.GetTagTemplateRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetTagTemplate(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) ListEntries

func (c *Client) ListEntries(ctx context.Context, req *datacatalogpb.ListEntriesRequest, opts ...gax.CallOption) *EntryIterator

ListEntries lists entries.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	"google.golang.org/api/iterator"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
	// import "google.golang.org/api/iterator"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ListEntriesRequest{
		// TODO: Fill request struct fields.
	}
	it := c.ListEntries(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

func (*Client) ListEntryGroups

ListEntryGroups lists entry groups.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	"google.golang.org/api/iterator"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
	// import "google.golang.org/api/iterator"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ListEntryGroupsRequest{
		// TODO: Fill request struct fields.
	}
	it := c.ListEntryGroups(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

func (*Client) ListTags

func (c *Client) ListTags(ctx context.Context, req *datacatalogpb.ListTagsRequest, opts ...gax.CallOption) *TagIterator

ListTags lists the tags on an Entry.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	"google.golang.org/api/iterator"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
	// import "google.golang.org/api/iterator"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ListTagsRequest{
		// TODO: Fill request struct fields.
	}
	it := c.ListTags(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

func (*Client) LookupEntry

LookupEntry get an entry by target resource name. This method allows clients to use the resource name from the source Google Cloud Platform service to get the Data Catalog Entry.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.LookupEntryRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.LookupEntry(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) RenameTagTemplateField

RenameTagTemplateField renames a field in a tag template. The user should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.RenameTagTemplateFieldRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.RenameTagTemplateField(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) RenameTagTemplateFieldEnumValue

RenameTagTemplateFieldEnumValue renames an enum value in a tag template. The enum values have to be unique within one enum field.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.RenameTagTemplateFieldEnumValueRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.RenameTagTemplateFieldEnumValue(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) SearchCatalog

SearchCatalog searches Data Catalog for multiple resources like entries, tags that match a query.

This is a custom method (https://cloud.google.com/apis/design/custom_methods (at https://cloud.google.com/apis/design/custom_methods)) and does not return the complete resource, only the resource identifier and high level fields. Clients can subsequently call Get methods.

Note that Data Catalog search queries do not guarantee full recall. Query results that match your query may not be returned, even in subsequent result pages. Also note that results returned (and not returned) can vary across repeated search queries.

See Data Catalog Search Syntax (at https://cloud.google.com/data-catalog/docs/how-to/search-reference) for more information.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	"google.golang.org/api/iterator"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
	// import "google.golang.org/api/iterator"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.SearchCatalogRequest{
		// TODO: Fill request struct fields.
	}
	it := c.SearchCatalog(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

func (*Client) SetIamPolicy

func (c *Client) SetIamPolicy(ctx context.Context, req *iampb.SetIamPolicyRequest, opts ...gax.CallOption) (*iampb.Policy, error)

SetIamPolicy sets the access control policy for a resource. Replaces any existing policy. Supported resources are:

Tag templates.

Entries.

Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

Callers must have following Google IAM permission

datacatalog.tagTemplates.setIamPolicy to set policies on tag templates.

datacatalog.entries.setIamPolicy to set policies on entries.

datacatalog.entryGroups.setIamPolicy to set policies on entry groups.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	iampb "google.golang.org/genproto/googleapis/iam/v1"
)

func main() {
	// import iampb "google.golang.org/genproto/googleapis/iam/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &iampb.SetIamPolicyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.SetIamPolicy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) TestIamPermissions

TestIamPermissions returns the caller’s permissions on a resource. If the resource does not exist, an empty set of permissions is returned (We don’t return a NOT_FOUND error).

Supported resources are:

Tag templates.

Entries.

Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

A caller is not required to have Google IAM permission to make this request.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	iampb "google.golang.org/genproto/googleapis/iam/v1"
)

func main() {
	// import iampb "google.golang.org/genproto/googleapis/iam/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &iampb.TestIamPermissionsRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.TestIamPermissions(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) UpdateEntry

UpdateEntry updates an existing entry. Users should enable the Data Catalog API in the project identified by the entry.name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdateEntryRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdateEntry(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) UpdateEntryGroup

UpdateEntryGroup updates an EntryGroup. The user should enable the Data Catalog API in the project identified by the entry_group.name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdateEntryGroupRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdateEntryGroup(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) UpdateTag

UpdateTag updates an existing tag.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdateTagRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdateTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) UpdateTagTemplate

UpdateTagTemplate updates a tag template. This method cannot be used to update the fields of a template. The tag template fields are represented as separate resources and should be updated using their own create/update/delete methods. Users should enable the Data Catalog API in the project identified by the tag_template.name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdateTagTemplateRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdateTagTemplate(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*Client) UpdateTagTemplateField

UpdateTagTemplateField updates a field in a tag template. This method cannot be used to update the field type. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project (at https://cloud.google.com/data-catalog/docs/concepts/resource-project)) for more information).

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdateTagTemplateFieldRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdateTagTemplateField(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

EntryGroupIterator

type EntryGroupIterator struct {

	// Response is the raw response for the current page.
	// It must be cast to the RPC response type.
	// Calling Next() or InternalFetch() updates this value.
	Response interface{}

	// InternalFetch is for use by the Google Cloud Libraries only.
	// It is not part of the stable interface of this package.
	//
	// InternalFetch returns results from a single call to the underlying RPC.
	// The number of results is no greater than pageSize.
	// If there are no more results, nextPageToken is empty and err is nil.
	InternalFetch func(pageSize int, pageToken string) (results []*datacatalogpb.EntryGroup, nextPageToken string, err error)
	// contains filtered or unexported fields
}

EntryGroupIterator manages a stream of *datacatalogpb.EntryGroup.

func (*EntryGroupIterator) Next

Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.

func (*EntryGroupIterator) PageInfo

func (it *EntryGroupIterator) PageInfo() *iterator.PageInfo

PageInfo supports pagination. See the google.golang.org/api/iterator package for details.

EntryIterator

type EntryIterator struct {

	// Response is the raw response for the current page.
	// It must be cast to the RPC response type.
	// Calling Next() or InternalFetch() updates this value.
	Response interface{}

	// InternalFetch is for use by the Google Cloud Libraries only.
	// It is not part of the stable interface of this package.
	//
	// InternalFetch returns results from a single call to the underlying RPC.
	// The number of results is no greater than pageSize.
	// If there are no more results, nextPageToken is empty and err is nil.
	InternalFetch func(pageSize int, pageToken string) (results []*datacatalogpb.Entry, nextPageToken string, err error)
	// contains filtered or unexported fields
}

EntryIterator manages a stream of *datacatalogpb.Entry.

func (*EntryIterator) Next

func (it *EntryIterator) Next() (*datacatalogpb.Entry, error)

Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.

func (*EntryIterator) PageInfo

func (it *EntryIterator) PageInfo() *iterator.PageInfo

PageInfo supports pagination. See the google.golang.org/api/iterator package for details.

PolicyTagIterator

type PolicyTagIterator struct {

	// Response is the raw response for the current page.
	// It must be cast to the RPC response type.
	// Calling Next() or InternalFetch() updates this value.
	Response interface{}

	// InternalFetch is for use by the Google Cloud Libraries only.
	// It is not part of the stable interface of this package.
	//
	// InternalFetch returns results from a single call to the underlying RPC.
	// The number of results is no greater than pageSize.
	// If there are no more results, nextPageToken is empty and err is nil.
	InternalFetch func(pageSize int, pageToken string) (results []*datacatalogpb.PolicyTag, nextPageToken string, err error)
	// contains filtered or unexported fields
}

PolicyTagIterator manages a stream of *datacatalogpb.PolicyTag.

func (*PolicyTagIterator) Next

Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.

func (*PolicyTagIterator) PageInfo

func (it *PolicyTagIterator) PageInfo() *iterator.PageInfo

PageInfo supports pagination. See the google.golang.org/api/iterator package for details.

PolicyTagManagerCallOptions

type PolicyTagManagerCallOptions struct {
	CreateTaxonomy     []gax.CallOption
	DeleteTaxonomy     []gax.CallOption
	UpdateTaxonomy     []gax.CallOption
	ListTaxonomies     []gax.CallOption
	GetTaxonomy        []gax.CallOption
	CreatePolicyTag    []gax.CallOption
	DeletePolicyTag    []gax.CallOption
	UpdatePolicyTag    []gax.CallOption
	ListPolicyTags     []gax.CallOption
	GetPolicyTag       []gax.CallOption
	GetIamPolicy       []gax.CallOption
	SetIamPolicy       []gax.CallOption
	TestIamPermissions []gax.CallOption
}

PolicyTagManagerCallOptions contains the retry settings for each method of PolicyTagManagerClient.

PolicyTagManagerClient

type PolicyTagManagerClient struct {

	// The call options for this service.
	CallOptions *PolicyTagManagerCallOptions
	// contains filtered or unexported fields
}

PolicyTagManagerClient is a client for interacting with Google Cloud Data Catalog API.

Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.

func NewPolicyTagManagerClient

func NewPolicyTagManagerClient(ctx context.Context, opts ...option.ClientOption) (*PolicyTagManagerClient, error)

NewPolicyTagManagerClient creates a new policy tag manager client.

Policy Tag Manager API service allows clients to manage their policy tags and taxonomies.

Policy tags are used to tag BigQuery columns and apply additional access control policies. A taxonomy is a hierarchical grouping of policy tags that classify data along a common axis.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use client.
	_ = c
}

func (*PolicyTagManagerClient) Close

func (c *PolicyTagManagerClient) Close() error

Close closes the connection to the API service. The user should invoke this when the client is no longer required.

func (*PolicyTagManagerClient) Connection

func (c *PolicyTagManagerClient) Connection() *grpc.ClientConn

Connection returns a connection to the API service.

Deprecated.

func (*PolicyTagManagerClient) CreatePolicyTag

CreatePolicyTag creates a policy tag in a taxonomy.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreatePolicyTagRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreatePolicyTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) CreateTaxonomy

CreateTaxonomy creates a taxonomy in a specified project. The taxonomy is initially empty, i.e., does not contain policy tags.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.CreateTaxonomyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.CreateTaxonomy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) DeletePolicyTag

DeletePolicyTag deletes a policy tag. This method also deletes:

all of its descendant policy tags, if any

the policies associated with the policy tag and its descendants

references from BigQuery table schema of the policy tag and its descendants.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeletePolicyTagRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeletePolicyTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*PolicyTagManagerClient) DeleteTaxonomy

DeleteTaxonomy deletes a taxonomy. This method will also delete all policy tags in this taxonomy, their associated policies, and the policy tags references from BigQuery columns.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.DeleteTaxonomyRequest{
		// TODO: Fill request struct fields.
	}
	err = c.DeleteTaxonomy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

func (*PolicyTagManagerClient) GetIamPolicy

GetIamPolicy gets the IAM policy for a policy tag or a taxonomy.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	iampb "google.golang.org/genproto/googleapis/iam/v1"
)

func main() {
	// import iampb "google.golang.org/genproto/googleapis/iam/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &iampb.GetIamPolicyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetIamPolicy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) GetPolicyTag

GetPolicyTag gets a policy tag.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.GetPolicyTagRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetPolicyTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) GetTaxonomy

GetTaxonomy gets a taxonomy.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.GetTaxonomyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.GetTaxonomy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) ListPolicyTags

ListPolicyTags lists all policy tags in a taxonomy.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	"google.golang.org/api/iterator"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
	// import "google.golang.org/api/iterator"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ListPolicyTagsRequest{
		// TODO: Fill request struct fields.
	}
	it := c.ListPolicyTags(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

func (*PolicyTagManagerClient) ListTaxonomies

ListTaxonomies lists all taxonomies in a project in a particular location that the caller has permission to view.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	"google.golang.org/api/iterator"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
	// import "google.golang.org/api/iterator"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ListTaxonomiesRequest{
		// TODO: Fill request struct fields.
	}
	it := c.ListTaxonomies(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp
	}
}

func (*PolicyTagManagerClient) SetIamPolicy

SetIamPolicy sets the IAM policy for a policy tag or a taxonomy.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	iampb "google.golang.org/genproto/googleapis/iam/v1"
)

func main() {
	// import iampb "google.golang.org/genproto/googleapis/iam/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &iampb.SetIamPolicyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.SetIamPolicy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) TestIamPermissions

TestIamPermissions returns the permissions that a caller has on a specified policy tag or taxonomy.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	iampb "google.golang.org/genproto/googleapis/iam/v1"
)

func main() {
	// import iampb "google.golang.org/genproto/googleapis/iam/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &iampb.TestIamPermissionsRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.TestIamPermissions(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) UpdatePolicyTag

UpdatePolicyTag updates a policy tag. This method can update the policy tag’s display name, description, and parent policy tag.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdatePolicyTagRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdatePolicyTag(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerClient) UpdateTaxonomy

UpdateTaxonomy updates a taxonomy. This method can update the taxonomy’s display name, description, and activated policy types.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"

	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.UpdateTaxonomyRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.UpdateTaxonomy(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

PolicyTagManagerSerializationCallOptions

type PolicyTagManagerSerializationCallOptions struct {
	ImportTaxonomies []gax.CallOption
	ExportTaxonomies []gax.CallOption
}

PolicyTagManagerSerializationCallOptions contains the retry settings for each method of PolicyTagManagerSerializationClient.

PolicyTagManagerSerializationClient

type PolicyTagManagerSerializationClient struct {

	// The call options for this service.
	CallOptions *PolicyTagManagerSerializationCallOptions
	// contains filtered or unexported fields
}

PolicyTagManagerSerializationClient is a client for interacting with Google Cloud Data Catalog API.

Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.

func NewPolicyTagManagerSerializationClient

func NewPolicyTagManagerSerializationClient(ctx context.Context, opts ...option.ClientOption) (*PolicyTagManagerSerializationClient, error)

NewPolicyTagManagerSerializationClient creates a new policy tag manager serialization client.

Policy Tag Manager serialization API service allows clients to manipulate their policy tags and taxonomies in serialized format, where taxonomy is a hierarchical group of policy tags.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
)

func main() {
	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerSerializationClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use client.
	_ = c
}

func (*PolicyTagManagerSerializationClient) Close

Close closes the connection to the API service. The user should invoke this when the client is no longer required.

func (*PolicyTagManagerSerializationClient) Connection

Connection returns a connection to the API service.

Deprecated.

func (*PolicyTagManagerSerializationClient) ExportTaxonomies

ExportTaxonomies exports taxonomies as the requested type and returns the taxonomies including their policy tags. The requested taxonomies must belong to one project.

SerializedTaxonomy protos with nested policy tags that are generated by this method can be used as input for future ImportTaxonomies calls.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerSerializationClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ExportTaxonomiesRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.ExportTaxonomies(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

func (*PolicyTagManagerSerializationClient) ImportTaxonomies

ImportTaxonomies creates new taxonomies (including their policy tags) by importing from inlined source or cross-regional source. New taxonomies will be created in a given parent project.

If using the cross-regional source, a new taxonomy is created by copying from a source in another region.

If using the inlined source, this method provides a way to bulk create taxonomies and policy tags using nested proto structure.

Example

package main

import (
	"context"

	datacatalog "cloud.google.com/go/datacatalog/apiv1"
	datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"
)

func main() {
	// import datacatalogpb "google.golang.org/genproto/googleapis/cloud/datacatalog/v1"

	ctx := context.Background()
	c, err := datacatalog.NewPolicyTagManagerSerializationClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}

	req := &datacatalogpb.ImportTaxonomiesRequest{
		// TODO: Fill request struct fields.
	}
	resp, err := c.ImportTaxonomies(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

SearchCatalogResultIterator

type SearchCatalogResultIterator struct {

	// Response is the raw response for the current page.
	// It must be cast to the RPC response type.
	// Calling Next() or InternalFetch() updates this value.
	Response interface{}

	// InternalFetch is for use by the Google Cloud Libraries only.
	// It is not part of the stable interface of this package.
	//
	// InternalFetch returns results from a single call to the underlying RPC.
	// The number of results is no greater than pageSize.
	// If there are no more results, nextPageToken is empty and err is nil.
	InternalFetch func(pageSize int, pageToken string) (results []*datacatalogpb.SearchCatalogResult, nextPageToken string, err error)
	// contains filtered or unexported fields
}

SearchCatalogResultIterator manages a stream of *datacatalogpb.SearchCatalogResult.

func (*SearchCatalogResultIterator) Next

Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.

func (*SearchCatalogResultIterator) PageInfo

PageInfo supports pagination. See the google.golang.org/api/iterator package for details.

TagIterator

type TagIterator struct {

	// Response is the raw response for the current page.
	// It must be cast to the RPC response type.
	// Calling Next() or InternalFetch() updates this value.
	Response interface{}

	// InternalFetch is for use by the Google Cloud Libraries only.
	// It is not part of the stable interface of this package.
	//
	// InternalFetch returns results from a single call to the underlying RPC.
	// The number of results is no greater than pageSize.
	// If there are no more results, nextPageToken is empty and err is nil.
	InternalFetch func(pageSize int, pageToken string) (results []*datacatalogpb.Tag, nextPageToken string, err error)
	// contains filtered or unexported fields
}

TagIterator manages a stream of *datacatalogpb.Tag.

func (*TagIterator) Next

func (it *TagIterator) Next() (*datacatalogpb.Tag, error)

Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.

func (*TagIterator) PageInfo

func (it *TagIterator) PageInfo() *iterator.PageInfo

PageInfo supports pagination. See the google.golang.org/api/iterator package for details.

TaxonomyIterator

type TaxonomyIterator struct {

	// Response is the raw response for the current page.
	// It must be cast to the RPC response type.
	// Calling Next() or InternalFetch() updates this value.
	Response interface{}

	// InternalFetch is for use by the Google Cloud Libraries only.
	// It is not part of the stable interface of this package.
	//
	// InternalFetch returns results from a single call to the underlying RPC.
	// The number of results is no greater than pageSize.
	// If there are no more results, nextPageToken is empty and err is nil.
	InternalFetch func(pageSize int, pageToken string) (results []*datacatalogpb.Taxonomy, nextPageToken string, err error)
	// contains filtered or unexported fields
}

TaxonomyIterator manages a stream of *datacatalogpb.Taxonomy.

func (*TaxonomyIterator) Next

Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.

func (*TaxonomyIterator) PageInfo

func (it *TaxonomyIterator) PageInfo() *iterator.PageInfo

PageInfo supports pagination. See the google.golang.org/api/iterator package for details.