NAME
    App::ManagePoolStyleRepo - Manage pool-style repo directory

VERSION
    This document describes version 0.002 of App::ManagePoolStyleRepo (from
    Perl distribution App-ManagePoolStyleRepo), released on 2020-04-13.

FUNCTIONS
  get_item_metadata
    Usage:

     get_item_metadata(%args) -> any

    This function is not exported.

    Arguments ('*' denotes required arguments):

    *   item_path* => *filename*

    Return value: (any)

  list_items
    Usage:

     list_items(%args) -> [status, msg, payload, meta]

    This function is not exported.

    Arguments ('*' denotes required arguments):

    *   detail => *bool*

    *   has_tags => *array[str]*

    *   lacks_tags => *array[str]*

    *   pool1_pattern => *re* (default: qr(\Apool1(?:\..+)?\z))

        By default, "pool1" and "pool1.*" subdirectories under the repo are
        searched for items under a layer of intermediate subdirectories. You
        can customize using this option. But note that "pool2_pattern"
        option has precedence over this.

    *   pool2_pattern => *re* (default: qr(\Apool2(?:\..+)?\z))

        By default, "pool2" and "pool2.*" subdirectories under the repo are
        searched for items. You can customize using this option.

    *   pool_pattern => *re* (default: qr(\Apool(?:\..+)?\z))

        By default, "pool" and "pool.*" subdirectory under the repo are
        searched for items. You can customize using this option. But note
        that "pool1_pattern" and "pool2_pattern" options have precedence
        over this.

    *   q => *str*

        Search query.

    *   repo_path* => *dirname*

        Repo directory.

    Returns an enveloped result (an array).

    First element (status) is an integer containing HTTP status code (200
    means OK, 4xx caller error, 5xx function error). Second element (msg) is
    a string containing error message, or 'OK' if status is 200. Third
    element (payload) is optional, the actual result. Fourth element (meta)
    is called result metadata and is optional, a hash that contains extra
    information.

    Return value: (any)

  update_index
    Usage:

     update_index(%args) -> [status, msg, payload, meta]

    This function is not exported.

    Arguments ('*' denotes required arguments):

    *   pool1_pattern => *re* (default: qr(\Apool1(?:\..+)?\z))

        By default, "pool1" and "pool1.*" subdirectories under the repo are
        searched for items under a layer of intermediate subdirectories. You
        can customize using this option. But note that "pool2_pattern"
        option has precedence over this.

    *   pool2_pattern => *re* (default: qr(\Apool2(?:\..+)?\z))

        By default, "pool2" and "pool2.*" subdirectories under the repo are
        searched for items. You can customize using this option.

    *   pool_pattern => *re* (default: qr(\Apool(?:\..+)?\z))

        By default, "pool" and "pool.*" subdirectory under the repo are
        searched for items. You can customize using this option. But note
        that "pool1_pattern" and "pool2_pattern" options have precedence
        over this.

    *   repo_path* => *dirname*

        Repo directory.

    Returns an enveloped result (an array).

    First element (status) is an integer containing HTTP status code (200
    means OK, 4xx caller error, 5xx function error). Second element (msg) is
    a string containing error message, or 'OK' if status is 200. Third
    element (payload) is optional, the actual result. Fourth element (meta)
    is called result metadata and is optional, a hash that contains extra
    information.

    Return value: (any)

BUGS
    Please report all bug reports or feature requests to
    <mailto:stevenharyanto@gmail.com>.

AUTHOR
    perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE
    This software is copyright (c) 2020 by perlancar@cpan.org.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.