Google-Cloud-Dataplex-V1

 view release on metacpan or  search on metacpan

lib/Google/Cloud/Dataplex/V1/Catalog.pm  view on Meta::CPAN


# === Service Client: Google::Cloud::Dataplex::V1::Catalog::CatalogServiceClient ===
package Google::Cloud::Dataplex::V1::Catalog::CatalogServiceClient;

=pod

=head1 NAME

Google::Cloud::Dataplex::V1::Catalog::CatalogServiceClient - Client stub representing the remote CatalogService service

=head1 DESCRIPTION

This class acts as a local client stub for the remote gRPC service.
It delegates call dispatching to an underlying L<Google::gRPC::Client>
instance, ensuring type-safe request parsing and response mapping.

=head1 CONFIGURATION AND ENVIRONMENT

=head2 target

The endpoint target address. Defaults to C<dataplex.googleapis.com:443>.

=head2 credentials

The authentication credentials provider. Defaults to application default credentials via L<Google::Auth>.

=cut

use Moo;
use Google::Auth;
use Google::gRPC::Client;

has credentials => ( is => 'ro', default => sub { Google::Auth->default() } );
has target      => ( is => 'ro', default => 'dataplex.googleapis.com:443' );

has _grpc_client => (
    is => 'ro',
    lazy => 1,
    builder => sub {
        my $self = shift;
        return Google::gRPC::Client->new(
            target     => $self->target,
            auth_token => $self->credentials->get_token(),
        );
    }
);

sub create_entry_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CreateEntryTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateEntryType',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_entry_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::UpdateEntryTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'UpdateEntryType',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub delete_entry_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::DeleteEntryTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'DeleteEntryType',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub list_entry_types {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::ListEntryTypesRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'ListEntryTypes',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::ListEntryTypesResponse',
    });
}

sub get_entry_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetEntryTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetEntryType',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::EntryType',
    });
}

sub create_aspect_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CreateAspectTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateAspectType',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_aspect_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::UpdateAspectTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'UpdateAspectType',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub delete_aspect_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::DeleteAspectTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'DeleteAspectType',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub list_aspect_types {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::ListAspectTypesRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'ListAspectTypes',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::ListAspectTypesResponse',
    });
}

sub get_aspect_type {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetAspectTypeRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetAspectType',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::AspectType',
    });
}

sub create_entry_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CreateEntryGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateEntryGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_entry_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::UpdateEntryGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'UpdateEntryGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub delete_entry_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::DeleteEntryGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'DeleteEntryGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub list_entry_groups {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::ListEntryGroupsRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'ListEntryGroups',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::ListEntryGroupsResponse',
    });
}

sub get_entry_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetEntryGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetEntryGroup',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::EntryGroup',
    });
}

sub create_entry {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CreateEntryRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateEntry',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::Entry',
    });
}

sub update_entry {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::UpdateEntryRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'UpdateEntry',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::Entry',
    });
}

sub delete_entry {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::DeleteEntryRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'DeleteEntry',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::Entry',
    });
}

sub list_entries {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::ListEntriesRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'ListEntries',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::ListEntriesResponse',
    });
}

sub get_entry {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetEntryRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetEntry',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::Entry',
    });
}

sub lookup_entry {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::LookupEntryRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'LookupEntry',
        request        => $req,

lib/Google/Cloud/Dataplex/V1/Catalog.pm  view on Meta::CPAN

    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateMetadataJob',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub get_metadata_job {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetMetadataJobRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetMetadataJob',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::MetadataJob',
    });
}

sub list_metadata_jobs {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::ListMetadataJobsRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'ListMetadataJobs',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::ListMetadataJobsResponse',
    });
}

sub cancel_metadata_job {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CancelMetadataJobRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CancelMetadataJob',
        request        => $req,
        response_class => 'Google::Protobuf::Empty::Empty',
    });
}

sub create_entry_link {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CreateEntryLinkRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateEntryLink',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::EntryLink',
    });
}

sub update_entry_link {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::UpdateEntryLinkRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'UpdateEntryLink',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::EntryLink',
    });
}

sub delete_entry_link {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::DeleteEntryLinkRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'DeleteEntryLink',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::EntryLink',
    });
}

sub lookup_entry_links {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::LookupEntryLinksRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'LookupEntryLinks',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::LookupEntryLinksResponse',
    });
}

sub lookup_context {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::LookupContextRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'LookupContext',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::LookupContextResponse',
    });
}

sub get_entry_link {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetEntryLinkRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetEntryLink',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::EntryLink',
    });
}

sub create_metadata_feed {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::CreateMetadataFeedRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'CreateMetadataFeed',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub get_metadata_feed {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::GetMetadataFeedRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'GetMetadataFeed',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::MetadataFeed',
    });
}

sub list_metadata_feeds {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::ListMetadataFeedsRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'ListMetadataFeeds',
        request        => $req,
        response_class => 'Google::Cloud::Dataplex::V1::Catalog::ListMetadataFeedsResponse',
    });
}

sub delete_metadata_feed {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::DeleteMetadataFeedRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'DeleteMetadataFeed',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_metadata_feed {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Dataplex::V1::Catalog::UpdateMetadataFeedRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.dataplex.v1.CatalogService',
        method         => 'UpdateMetadataFeed',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

1;

__END__

=head1 NAME

Google::Cloud::Dataplex::V1::Catalog - Protocol Buffers schema definition

=head1 DESCRIPTION

Auto-generated Protocol Buffers schema definition class.

=head1 LICENSE AND COPYRIGHT

Copyright (C) 2026 Google LLC

This program is released under the Apache 2.0 license.

=cut



( run in 0.595 second using v1.01-cache-2.11-cpan-7e94247ccb0 )