Scroll to navigation

GitLab::API::v4::Paginator(3pm) User Contributed Perl Documentation GitLab::API::v4::Paginator(3pm)

NAME

GitLab::API::v4::Paginator - Iterate through paginated GitLab v4 API records.

DESCRIPTION

There should be no need to create objects of this type directly, instead use "paginator" in GitLab::API::v4 which simplifies things a bit.

REQUIRED ARGUMENTS

method

The name of the method subroutine to call on the "api" object to get records from.

This method must accept a hash ref of parameters as the last argument, adhere to the "page" and "per_page" parameters, and return an array ref.

api

The GitLab::API::v4 object.

OPTIONAL ARGUMENTS

args

The arguments to use when calling the "method", the same arguments you would use when you call the method yourself on the "api" object, minus the "\%params" hash ref.

params

The "\%params" hash ref argument.

METHODS

next_page

    while (my $records = $paginator->next_page()) { ... }

Returns an array ref of records for the next page.

next

    while (my $record = $paginator->next()) { ... }

Returns the next record in the current page. If all records have been exhausted then "next_page" will automatically be called. This way if you want to ignore pagination you can just call "next" over and over again to walk through all the records.

all

    my $records = $paginator->all();

This is just an alias for calling "next_page" over and over again to build an array ref of all records.

reset

    $paginator->reset();

Reset the paginator back to its original state on the first page with no records retrieved yet.

AUTHORS

See "AUTHOR" in GitLab::API::v4 and "CONTRIBUTORS" in GitLab::API::v4.

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2019-01-28 perl v5.24.1