ElasticSearchX-Model

 view release on metacpan or  search on metacpan

lib/ElasticSearchX/Model/Bulk.pm  view on Meta::CPAN

26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
    my $self = shift;
    $self->es->bulk_helper( max_count => $self->size );
}
 
sub add {
    my ( $self, $action, $payload ) = ( shift, %{ $_[0] } );
    $payload->{source} = delete $payload->{body};
    $self->stash->add_action( $action => $payload );
}
 
sub update {
    my ( $self, $doc, $qs ) = @_;
    $self->add(
        {
            index => ref $doc eq 'HASH'
            ? $doc
            : { $doc->_put( $doc->_update($qs) ) }
        }
    );
    return $self;
}

lib/ElasticSearchX/Model/Document/Role.pm  view on Meta::CPAN

43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
has _version => (
    is          => 'ro',
    property    => 0,
    source_only => 1,
    traits      => [
        'ElasticSearchX::Model::Document::Trait::Attribute',
        'ElasticSearchX::Model::Document::Trait::Field::Version',
    ],
);
 
sub update {
    my $self = shift;
    die "cannot update partially loaded document"
        unless ( $self->meta->all_properties_loaded($self) );
    return $self->put( { $self->_update(@_) } );
}
 
sub _update {
    my ( $self, $qs ) = @_;
    $qs ||= {};
    return %$qs if ( exists $qs->{version} );



( run in 1.942 second using v1.01-cache-2.11-cpan-26ccb49234f )