The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Data::AnyXfer::Elastic::IndexInfo - Object representing Elasticsearch information

SYNOPSIS

    my %ad_hoc_info = (
        alias => 'interiors',
        silo => 'public_data',
        type => 'some_document_type', );

    my $info =
        Data::AnyXfer::Elastic::IndexInfo->new(%ad_hoc_info);

    # supplied to some routine and object requiring connection
    # information / an IndexInfo field or argument...

    my $datafile =
        Data::AnyXfer::Elastic::Import::DataFile->new(
        index_info => $info );

    # or, do something with the IndexInfo interface...

    my $index = $info->get_index;
    $index->search( ... );

DESCRIPTION

This object can be used by Data::AnyXfer::Elastic to retrieve or supply Elasticsearch indexing / storage information.

This basically acts as connection information. This is a basic implementation and consumer of the Data::AnyXfer::Elastic::Role::IndexInfo role.

This module may be subclassed and pre-populated with connection information to provide useful per-package or project Elasticsearch information, which can then be used or advertised by any related modules.

SEE ALSO

Data::AnyXfer::Elastic::ImplementingAProject, Data::AnyXfer::Elastic

INDEXINFO INTERFACE

All "REQUIRED METHODS" in Data::AnyXfer::Elastic::Role::IndexInfo are implemented as attributes.

Only mappings, settings, warmers, and aliases are not required. All others are required (alias, silo, index and type)

Please see "REQUIRED METHODS" in Data::AnyXfer::Elastic::Role::IndexInfo for more details on the fields.

Extensions

connect_hint

 A connection hint for use with L<Data::AnyXfer::Elastic>.

 Currently supports C<undef> (unspecified), C<readonly>, or C<readwrite>.

as_hash

    my $info = $index_info->as_hash;

Export all index information as a hash.

COPYRIGHT

This software is copyright (c) 2019, Anthony Lucas.

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