view release on metacpan or search on metacpan
lib/Google/Cloud/Networkservices/V1/Dep.pm view on Meta::CPAN
=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<networkservices.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;
lib/Google/Cloud/Networkservices/V1/DepServiceClient.pm view on Meta::CPAN
=item * C<google/cloud/networkservices/v1/service_binding.proto>
=item * C<google/cloud/networkservices/v1/tls_route.proto>
=item * C<google/cloud/networkservices/v1/dep.proto>
=item * C<google/cloud/networkservices/v1/route_view.proto>
=item * C<google/cloud/networkservices/v1/service_lb_policy.proto>
=item * C<google/cloud/networkservices/v1/endpoint_policy.proto>
=item * C<google/cloud/networkservices/v1/gateway.proto>
=item * C<google/cloud/networkservices/v1/grpc_route.proto>
=item * C<google/cloud/networkservices/v1/extensibility.proto>
=item * C<google/cloud/networkservices/v1/agent_gateway.proto>
lib/Google/Cloud/Networkservices/V1/EndpointPolicy.pm view on Meta::CPAN
# Message definitions
# === Message: Google::Cloud::Networkservices::V1::EndpointPolicy::EndpointPolicy ===
# Fields for EndpointPolicy
# Field: name Type: 9 ()
# Field: create_time Type: 11 (.google.protobuf.Timestamp)
# Field: update_time Type: 11 (.google.protobuf.Timestamp)
# Field: labels Type: 11 (.google.cloud.networkservices.v1.EndpointPolicy.LabelsEntry)
# Field: type Type: 14 (.google.cloud.networkservices.v1.EndpointPolicy.EndpointPolicyType)
# Field: authorization_policy Type: 9 ()
# Field: endpoint_matcher Type: 11 (.google.cloud.networkservices.v1.EndpointMatcher)
# Field: traffic_port_selector Type: 11 (.google.cloud.networkservices.v1.TrafficPortSelector)
# Field: description Type: 9 ()
# Field: server_tls_policy Type: 9 ()
# Field: client_tls_policy Type: 9 ()
=pod
=head1 NAME
Google::Cloud::Networkservices::V1::EndpointPolicy::EndpointPolicy - Compiled Protocol Buffers message class
lib/Google/Cloud/Networkservices/V1/EndpointPolicy.pm view on Meta::CPAN
Type: Message (.google.cloud.networkservices.v1.EndpointPolicy.LabelsEntry)
=item * B<type>
Type: Enum (.google.cloud.networkservices.v1.EndpointPolicy.EndpointPolicyType)
=item * B<authorization_policy>
Type: String
=item * B<endpoint_matcher>
Type: Message (.google.cloud.networkservices.v1.EndpointMatcher)
=item * B<traffic_port_selector>
Type: Message (.google.cloud.networkservices.v1.TrafficPortSelector)
=item * B<description>
Type: String
lib/Google/Cloud/Networkservices/V1/EndpointPolicy.pm view on Meta::CPAN
=item * B<return_partial_success>
Type: Bool
=back
=cut
# === Message: Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse ===
# Fields for ListEndpointPoliciesResponse
# Field: endpoint_policies Type: 11 (.google.cloud.networkservices.v1.EndpointPolicy)
# Field: next_page_token Type: 9 ()
# Field: unreachable Type: 9 ()
=pod
=head1 NAME
Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse - Compiled Protocol Buffers message class
=head1 SYNOPSIS
use Google::Cloud::Networkservices::V1::EndpointPolicy;
my $msg = Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse->new(
endpoint_policies => $value,
);
=head1 FIELDS
=over 4
=item * B<endpoint_policies>
Type: Message (.google.cloud.networkservices.v1.EndpointPolicy)
=item * B<next_page_token>
Type: String
=item * B<unreachable>
Type: String
lib/Google/Cloud/Networkservices/V1/EndpointPolicy.pm view on Meta::CPAN
Type: String
=back
=cut
# === Message: Google::Cloud::Networkservices::V1::EndpointPolicy::CreateEndpointPolicyRequest ===
# Fields for CreateEndpointPolicyRequest
# Field: parent Type: 9 ()
# Field: endpoint_policy_id Type: 9 ()
# Field: endpoint_policy Type: 11 (.google.cloud.networkservices.v1.EndpointPolicy)
=pod
=head1 NAME
Google::Cloud::Networkservices::V1::EndpointPolicy::CreateEndpointPolicyRequest - Compiled Protocol Buffers message class
=head1 SYNOPSIS
use Google::Cloud::Networkservices::V1::EndpointPolicy;
lib/Google/Cloud/Networkservices/V1/EndpointPolicy.pm view on Meta::CPAN
);
=head1 FIELDS
=over 4
=item * B<parent>
Type: String
=item * B<endpoint_policy_id>
Type: String
=item * B<endpoint_policy>
Type: Message (.google.cloud.networkservices.v1.EndpointPolicy)
=back
=cut
# === Message: Google::Cloud::Networkservices::V1::EndpointPolicy::UpdateEndpointPolicyRequest ===
# Fields for UpdateEndpointPolicyRequest
# Field: update_mask Type: 11 (.google.protobuf.FieldMask)
# Field: endpoint_policy Type: 11 (.google.cloud.networkservices.v1.EndpointPolicy)
=pod
=head1 NAME
Google::Cloud::Networkservices::V1::EndpointPolicy::UpdateEndpointPolicyRequest - Compiled Protocol Buffers message class
=head1 SYNOPSIS
use Google::Cloud::Networkservices::V1::EndpointPolicy;
lib/Google/Cloud/Networkservices/V1/EndpointPolicy.pm view on Meta::CPAN
);
=head1 FIELDS
=over 4
=item * B<update_mask>
Type: Message (.google.protobuf.FieldMask)
=item * B<endpoint_policy>
Type: Message (.google.cloud.networkservices.v1.EndpointPolicy)
=back
=cut
# === Message: Google::Cloud::Networkservices::V1::EndpointPolicy::DeleteEndpointPolicyRequest ===
# Fields for DeleteEndpointPolicyRequest
# Field: name Type: 9 ()
lib/Google/Cloud/Networkservices/V1/Networkservices.pm view on Meta::CPAN
=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<networkservices.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;
lib/Google/Cloud/Networkservices/V1/Networkservices.pm view on Meta::CPAN
lazy => 1,
builder => sub {
my $self = shift;
return Google::gRPC::Client->new(
target => $self->target,
auth_token => $self->credentials->get_token(),
);
}
);
sub list_endpoint_policies {
my ($self, $args) = @_;
my $req = ref($args) eq 'HASH'
? Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesRequest->new($args)
: $args;
return $self->_grpc_client->call({
service => 'google.cloud.networkservices.v1.NetworkServices',
method => 'ListEndpointPolicies',
request => $req,
response_class => 'Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse',
});
}
sub get_endpoint_policy {
my ($self, $args) = @_;
my $req = ref($args) eq 'HASH'
? Google::Cloud::Networkservices::V1::EndpointPolicy::GetEndpointPolicyRequest->new($args)
: $args;
return $self->_grpc_client->call({
service => 'google.cloud.networkservices.v1.NetworkServices',
method => 'GetEndpointPolicy',
request => $req,
response_class => 'Google::Cloud::Networkservices::V1::EndpointPolicy::EndpointPolicy',
});
}
sub create_endpoint_policy {
my ($self, $args) = @_;
my $req = ref($args) eq 'HASH'
? Google::Cloud::Networkservices::V1::EndpointPolicy::CreateEndpointPolicyRequest->new($args)
: $args;
return $self->_grpc_client->call({
service => 'google.cloud.networkservices.v1.NetworkServices',
method => 'CreateEndpointPolicy',
request => $req,
response_class => 'Google::Longrunning::Operations::Operation',
});
}
sub update_endpoint_policy {
my ($self, $args) = @_;
my $req = ref($args) eq 'HASH'
? Google::Cloud::Networkservices::V1::EndpointPolicy::UpdateEndpointPolicyRequest->new($args)
: $args;
return $self->_grpc_client->call({
service => 'google.cloud.networkservices.v1.NetworkServices',
method => 'UpdateEndpointPolicy',
request => $req,
response_class => 'Google::Longrunning::Operations::Operation',
});
}
sub delete_endpoint_policy {
my ($self, $args) = @_;
my $req = ref($args) eq 'HASH'
? Google::Cloud::Networkservices::V1::EndpointPolicy::DeleteEndpointPolicyRequest->new($args)
: $args;
return $self->_grpc_client->call({
service => 'google.cloud.networkservices.v1.NetworkServices',
method => 'DeleteEndpointPolicy',
request => $req,
response_class => 'Google::Longrunning::Operations::Operation',
});
lib/Google/Cloud/Networkservices/V1/NetworkservicesClient.pm view on Meta::CPAN
} else {
# Default high-performance HTTP/2 gRPC client
my $client = Google::gRPC::Client->new(
target => $target,
auth_token => $token,
);
$self->transport($client);
}
}
sub list_endpoint_policies {
my ($self, %params) = @_;
my $request_class = 'Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesRequest';
my $request = eval { $request_class->new(\%params) } || eval { $request_class->new(%params) } || ($request_class->can('encode') ? $request_class->encode(\%params) : \%params);
my $response_class = 'Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse';
my $response = $self->transport->call({
service => 'google.cloud.networkservices.v1.NetworkServices',
method => 'ListEndpointPolicies',
request => $request,
lib/Google/Cloud/Networkservices/V1/NetworkservicesClient.pm view on Meta::CPAN
=item * C<google/cloud/networkservices/v1/service_binding.proto>
=item * C<google/cloud/networkservices/v1/tls_route.proto>
=item * C<google/cloud/networkservices/v1/dep.proto>
=item * C<google/cloud/networkservices/v1/route_view.proto>
=item * C<google/cloud/networkservices/v1/service_lb_policy.proto>
=item * C<google/cloud/networkservices/v1/endpoint_policy.proto>
=item * C<google/cloud/networkservices/v1/gateway.proto>
=item * C<google/cloud/networkservices/v1/grpc_route.proto>
=item * C<google/cloud/networkservices/v1/extensibility.proto>
=item * C<google/cloud/networkservices/v1/agent_gateway.proto>
lib/Google/Cloud/Networkservices/V1/NetworkservicesClient.pm view on Meta::CPAN
Returns or accepts the active transport object (L<Google::gRPC::Client> or L<Google::Cloud::REST::Client>).
=head1 METHODS
=head2 METHODS
The following RPC methods are available in this client:
=over 4
=item * B<list_endpoint_policies>
Calls the RPC method C<ListEndpointPolicies> on the service. Takes a hash of parameters representing the request.
=back
=head1 LICENSE AND COPYRIGHT
Copyright (C) 2026 Google LLC
t/01-service-Networkservices.t view on Meta::CPAN
}
# D. Main test execution
package main;
use Google::Cloud::Networkservices::V1::NetworkservicesClient;
my $client = Google::Cloud::Networkservices::V1::NetworkservicesClient->new( credentials => 'dummy' );
ok($client, 'Instantiated generated client');
isa_ok($client->transport, 'Google::gRPC::Client', 'Client transport');
subtest 'list_endpoint_policies method' => sub {
$client->transport->{mock_call} = sub {
my ($args) = @_;
is($args->{service}, 'google.cloud.networkservices.v1.NetworkServices', 'Correct service path');
is($args->{method}, 'ListEndpointPolicies', 'Correct RPC method');
isa_ok($args->{request}, 'Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesRequest', 'Request object');
my $response = 'Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse'->new();
return $response;
};
my $res = $client->list_endpoint_policies();
ok($res, 'Method returned a response');
isa_ok($res, 'Google::Cloud::Networkservices::V1::EndpointPolicy::ListEndpointPoliciesResponse', 'Response object class');
done_testing();
};
done_testing();