Google-Cloud-Networksecurity-V1

 view release on metacpan or  search on metacpan

lib/Google/Cloud/Networksecurity/V1/Mirroring.pm  view on Meta::CPAN

=item * C<TYPE_UNSPECIFIED> => 0

=item * C<DIRECT> => 1

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsRequest ===
    # Fields for ListMirroringEndpointGroupsRequest
    # Field: parent Type: 9 ()
    # Field: page_size Type: 5 ()
    # Field: page_token Type: 9 ()
    # Field: filter Type: 9 ()
    # Field: order_by Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsRequest->new(
        parent => $value,
    );

=head1 FIELDS

=over 4

=item * B<parent>

Type: String

=item * B<page_size>

Type: Int32

=item * B<page_token>

Type: String

=item * B<filter>

Type: String

=item * B<order_by>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsResponse ===
    # Fields for ListMirroringEndpointGroupsResponse
    # Field: mirroring_endpoint_groups Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroup)
    # Field: next_page_token Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsResponse - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsResponse->new(
        mirroring_endpoint_groups => $value,
    );

=head1 FIELDS

=over 4

=item * B<mirroring_endpoint_groups>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroup)

=item * B<next_page_token>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupRequest ===
    # Fields for GetMirroringEndpointGroupRequest
    # Field: name Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupRequest->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupRequest ===
    # Fields for CreateMirroringEndpointGroupRequest
    # Field: parent Type: 9 ()
    # Field: mirroring_endpoint_group_id Type: 9 ()
    # Field: mirroring_endpoint_group Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroup)
    # Field: request_id Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupRequest->new(
        parent => $value,
    );

=head1 FIELDS

=over 4

=item * B<parent>

Type: String

=item * B<mirroring_endpoint_group_id>

Type: String

=item * B<mirroring_endpoint_group>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroup)

=item * B<request_id>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupRequest ===
    # Fields for UpdateMirroringEndpointGroupRequest
    # Field: update_mask Type: 11 (.google.protobuf.FieldMask)
    # Field: mirroring_endpoint_group Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroup)
    # Field: request_id Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupRequest->new(
        update_mask => $value,
    );

=head1 FIELDS

=over 4

=item * B<update_mask>

Type: Message (.google.protobuf.FieldMask)

=item * B<mirroring_endpoint_group>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroup)

=item * B<request_id>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupRequest ===
    # Fields for DeleteMirroringEndpointGroupRequest
    # Field: name Type: 9 ()
    # Field: request_id Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupRequest->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=item * B<request_id>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::MirroringEndpointGroupAssociation ===
    # Fields for MirroringEndpointGroupAssociation
    # 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.networksecurity.v1.MirroringEndpointGroupAssociation.LabelsEntry)
    # Field: mirroring_endpoint_group Type: 9 ()
    # Field: network Type: 9 ()
    # Field: locations_details Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation.LocationDetails)
    # Field: state Type: 14 (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation.State)
    # Field: reconciling Type: 8 ()
    # Field: locations Type: 11 (.google.cloud.networksecurity.v1.MirroringLocation)

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::MirroringEndpointGroupAssociation - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::MirroringEndpointGroupAssociation->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=item * B<create_time>

Type: Message (.google.protobuf.Timestamp)

=item * B<update_time>

Type: Message (.google.protobuf.Timestamp)

=item * B<labels>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation.LabelsEntry)

=item * B<mirroring_endpoint_group>

Type: String

=item * B<network>

Type: String

=item * B<locations_details>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation.LocationDetails)

=item * B<state>

Type: Enum (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation.State)

=item * B<reconciling>

Type: Bool

=item * B<locations>

Type: Message (.google.cloud.networksecurity.v1.MirroringLocation)

=back

=cut

# Enum: MirroringEndpointGroupAssociation::State
our $MirroringEndpointGroupAssociation_STATE_UNSPECIFIED = 0;
our $MirroringEndpointGroupAssociation_ACTIVE = 1;
our $MirroringEndpointGroupAssociation_CREATING = 3;
our $MirroringEndpointGroupAssociation_DELETING = 4;
our $MirroringEndpointGroupAssociation_CLOSED = 5;
our $MirroringEndpointGroupAssociation_OUT_OF_SYNC = 6;
our $MirroringEndpointGroupAssociation_DELETE_FAILED = 7;

=pod

=head2 Enum: MirroringEndpointGroupAssociation::State

Values:

=over 4

=item * C<STATE_UNSPECIFIED> => 0

=item * C<ACTIVE> => 1

=item * C<CREATING> => 3

=item * C<DELETING> => 4

=item * C<CLOSED> => 5

=item * C<OUT_OF_SYNC> => 6

=item * C<DELETE_FAILED> => 7

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsRequest ===
    # Fields for ListMirroringEndpointGroupAssociationsRequest
    # Field: parent Type: 9 ()
    # Field: page_size Type: 5 ()
    # Field: page_token Type: 9 ()
    # Field: filter Type: 9 ()
    # Field: order_by Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsRequest->new(
        parent => $value,
    );

=head1 FIELDS

=over 4

=item * B<parent>

Type: String

=item * B<page_size>

Type: Int32

=item * B<page_token>

Type: String

=item * B<filter>

Type: String

=item * B<order_by>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsResponse ===
    # Fields for ListMirroringEndpointGroupAssociationsResponse
    # Field: mirroring_endpoint_group_associations Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation)
    # Field: next_page_token Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsResponse - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsResponse->new(
        mirroring_endpoint_group_associations => $value,
    );

=head1 FIELDS

=over 4

=item * B<mirroring_endpoint_group_associations>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation)

=item * B<next_page_token>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupAssociationRequest ===
    # Fields for GetMirroringEndpointGroupAssociationRequest
    # Field: name Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupAssociationRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupAssociationRequest->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupAssociationRequest ===
    # Fields for CreateMirroringEndpointGroupAssociationRequest
    # Field: parent Type: 9 ()
    # Field: mirroring_endpoint_group_association_id Type: 9 ()
    # Field: mirroring_endpoint_group_association Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation)
    # Field: request_id Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupAssociationRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupAssociationRequest->new(
        parent => $value,
    );

=head1 FIELDS

=over 4

=item * B<parent>

Type: String

=item * B<mirroring_endpoint_group_association_id>

Type: String

=item * B<mirroring_endpoint_group_association>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation)

=item * B<request_id>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupAssociationRequest ===
    # Fields for UpdateMirroringEndpointGroupAssociationRequest
    # Field: update_mask Type: 11 (.google.protobuf.FieldMask)
    # Field: mirroring_endpoint_group_association Type: 11 (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation)
    # Field: request_id Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupAssociationRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupAssociationRequest->new(
        update_mask => $value,
    );

=head1 FIELDS

=over 4

=item * B<update_mask>

Type: Message (.google.protobuf.FieldMask)

=item * B<mirroring_endpoint_group_association>

Type: Message (.google.cloud.networksecurity.v1.MirroringEndpointGroupAssociation)

=item * B<request_id>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupAssociationRequest ===
    # Fields for DeleteMirroringEndpointGroupAssociationRequest
    # Field: name Type: 9 ()
    # Field: request_id Type: 9 ()

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupAssociationRequest - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupAssociationRequest->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=item * B<request_id>

Type: String

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::MirroringDeploymentGroup ===
    # Fields for MirroringDeploymentGroup
    # 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.networksecurity.v1.MirroringDeploymentGroup.LabelsEntry)
    # Field: network Type: 9 ()
    # Field: connected_endpoint_groups Type: 11 (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.ConnectedEndpointGroup)
    # Field: nested_deployments Type: 11 (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.Deployment)
    # Field: state Type: 14 (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.State)
    # Field: reconciling Type: 8 ()
    # Field: description Type: 9 ()
    # Field: locations Type: 11 (.google.cloud.networksecurity.v1.MirroringLocation)

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::MirroringDeploymentGroup - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Cloud::Networksecurity::V1::Mirroring;

    my $msg = Google::Cloud::Networksecurity::V1::Mirroring::MirroringDeploymentGroup->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=item * B<create_time>

Type: Message (.google.protobuf.Timestamp)

=item * B<update_time>

Type: Message (.google.protobuf.Timestamp)

=item * B<labels>

Type: Message (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.LabelsEntry)

=item * B<network>

Type: String

=item * B<connected_endpoint_groups>

Type: Message (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.ConnectedEndpointGroup)

=item * B<nested_deployments>

Type: Message (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.Deployment)

=item * B<state>

Type: Enum (.google.cloud.networksecurity.v1.MirroringDeploymentGroup.State)

=item * B<reconciling>

Type: Bool

=item * B<description>

Type: String

=item * B<locations>

Type: Message (.google.cloud.networksecurity.v1.MirroringLocation)

=back

=cut

# Enum: MirroringDeploymentGroup::State
our $MirroringDeploymentGroup_STATE_UNSPECIFIED = 0;
our $MirroringDeploymentGroup_ACTIVE = 1;
our $MirroringDeploymentGroup_CREATING = 2;
our $MirroringDeploymentGroup_DELETING = 3;
our $MirroringDeploymentGroup_CLOSED = 4;

=pod

=head2 Enum: MirroringDeploymentGroup::State

Values:

=over 4

=item * C<STATE_UNSPECIFIED> => 0

=item * C<ACTIVE> => 1

=item * C<CREATING> => 2

=item * C<DELETING> => 3

=item * C<CLOSED> => 4

=back

=cut

# === Message: Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringDeploymentGroupsRequest ===
    # Fields for ListMirroringDeploymentGroupsRequest
    # Field: parent Type: 9 ()
    # Field: page_size Type: 5 ()

lib/Google/Cloud/Networksecurity/V1/Mirroring.pm  view on Meta::CPAN

    );

=head1 FIELDS

=over 4

=item * B<location>

Type: String

=item * B<state>

Type: Enum (.google.cloud.networksecurity.v1.MirroringLocation.State)

=back

=cut

# Enum: MirroringLocation::State
our $MirroringLocation_STATE_UNSPECIFIED = 0;
our $MirroringLocation_ACTIVE = 1;
our $MirroringLocation_OUT_OF_SYNC = 2;

=pod

=head2 Enum: MirroringLocation::State

Values:

=over 4

=item * C<STATE_UNSPECIFIED> => 0

=item * C<ACTIVE> => 1

=item * C<OUT_OF_SYNC> => 2

=back

=cut

# === Service Client: Google::Cloud::Networksecurity::V1::Mirroring::MirroringClient ===
package Google::Cloud::Networksecurity::V1::Mirroring::MirroringClient;

=pod

=head1 NAME

Google::Cloud::Networksecurity::V1::Mirroring::MirroringClient - Client stub representing the remote Mirroring 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<networksecurity.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 => 'networksecurity.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 list_mirroring_endpoint_groups {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'ListMirroringEndpointGroups',
        request        => $req,
        response_class => 'Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupsResponse',
    });
}

sub get_mirroring_endpoint_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'GetMirroringEndpointGroup',
        request        => $req,
        response_class => 'Google::Cloud::Networksecurity::V1::Mirroring::MirroringEndpointGroup',
    });
}

sub create_mirroring_endpoint_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'CreateMirroringEndpointGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_mirroring_endpoint_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'UpdateMirroringEndpointGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub delete_mirroring_endpoint_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'DeleteMirroringEndpointGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub list_mirroring_endpoint_group_associations {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'ListMirroringEndpointGroupAssociations',
        request        => $req,
        response_class => 'Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringEndpointGroupAssociationsResponse',
    });
}

sub get_mirroring_endpoint_group_association {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringEndpointGroupAssociationRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'GetMirroringEndpointGroupAssociation',
        request        => $req,
        response_class => 'Google::Cloud::Networksecurity::V1::Mirroring::MirroringEndpointGroupAssociation',
    });
}

sub create_mirroring_endpoint_group_association {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringEndpointGroupAssociationRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'CreateMirroringEndpointGroupAssociation',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_mirroring_endpoint_group_association {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringEndpointGroupAssociationRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'UpdateMirroringEndpointGroupAssociation',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub delete_mirroring_endpoint_group_association {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::DeleteMirroringEndpointGroupAssociationRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'DeleteMirroringEndpointGroupAssociation',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub list_mirroring_deployment_groups {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringDeploymentGroupsRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'ListMirroringDeploymentGroups',
        request        => $req,
        response_class => 'Google::Cloud::Networksecurity::V1::Mirroring::ListMirroringDeploymentGroupsResponse',
    });
}

sub get_mirroring_deployment_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::GetMirroringDeploymentGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'GetMirroringDeploymentGroup',
        request        => $req,
        response_class => 'Google::Cloud::Networksecurity::V1::Mirroring::MirroringDeploymentGroup',
    });
}

sub create_mirroring_deployment_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::CreateMirroringDeploymentGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'CreateMirroringDeploymentGroup',
        request        => $req,
        response_class => 'Google::Longrunning::Operations::Operation',
    });
}

sub update_mirroring_deployment_group {
    my ($self, $args) = @_;
    my $req = ref($args) eq 'HASH'
        ? Google::Cloud::Networksecurity::V1::Mirroring::UpdateMirroringDeploymentGroupRequest->new($args)
        : $args;
    return $self->_grpc_client->call({
        service        => 'google.cloud.networksecurity.v1.Mirroring',
        method         => 'UpdateMirroringDeploymentGroup',
        request        => $req,



( run in 0.737 second using v1.01-cache-2.11-cpan-f03e8824b8d )