Net::GitHub::V3::Query(3)

NAME
Net::GitHub::V3::Query - Base Query role for Net::GitHub::V3

SYNOPSIS
    package Net::GitHub::V3::XXX;

    use Moo;
    with 'Net::GitHub::V3::Query';

DESCRIPTION
set Authentication and call API

  ATTRIBUTES

login
pass
access_token
    Either set access_token from OAuth or login:pass for Basic Authentication

    <http://developer.github.com/>

raw_string
raw_response
api_throttle
    API throttling is enabled by default, set api_throttle to 0 to disable it.

rate_limit
    The maximum number of queries allowed per hour. 60 for anonymous users and 5,000 for authenticated users.

rate_limit_remaining
    The number of requests remaining in the current rate limit window.

rate_limit_reset
    The time the current rate limit resets in UTC epoch seconds.

update_rate_limit
    Query the /rate_limit API (for free) to update the cached values for rate_limit, rate_limit_remaining, rate_limit_reset

last_page
    Denotes the index of the last page in the pagination

RaiseError

  METHODS

query
    Refer Net::GitHub::V3

next_page
    Calls "query" with "next_url". See Net::GitHub::V3

prev_page
    Calls "query" with "prev_url". See Net::GitHub::V3

first_page
    Calls "query" with "first_url". See Net::GitHub::V3

last_page
    Calls "query" with "last_url". See Net::GitHub::V3

set_next_page
    Adjusts next_url to be a new url in the pagination space I.E. you are jumping to a new index in the pagination

iterate($method_name, $arguments, $callback)
    This provides an helper to iterate over APIs call using pagination, using the combo: has_next_page, next_page... for you.

    The arguments can be either a scalar if the function is using a single argument, an ArrayRef when the function is using multiple arguments. You can also use one HashRef for functions supporting named parameters.

    The callback function is called with a single item. The return value of the callback function can be used to stop the iteration when returning a 'false' value.

    In common cases, you want to return a true value: '1'.

    Sample usage:

        $gh->org->iterate( 'repos', 'OrganizationName', sub {
            my $item = shift;

            print "Repo Name is $item->{name}"

            return 1; # if you want to continue iterating
            return;   # use a false value when you want to interrupt the iteration
        } );

result_sets
    For internal use by the item-per-item pagination: This is a store of the state(s) for the pagination. Each entry maps the initial URL of a GitHub query to a Net::GitHub::V3::ResultSet object.

next($url)
    Returns the next item for the query which started at $url, or undef if there are no more items.

close($url)
    Terminates the item-per-item pagination for the query which started at $url.

NG_DEBUG

export NG_DEBUG=1 to view the request URL

NG_DEBUG > 1 to view request/response string

AUTHOR & COPYRIGHT & LICENSE
Refer Net::GitHub