summaryrefslogblamecommitdiff
path: root/lib/Net/Riak/Role/REST/Search.pm
blob: b100c2db5b9ffe3f68ab6d6f7dcdbfbe98bb9b98 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11










                                                                              






                                                                      







                                                      
 




                                               
package Net::Riak::Role::REST::Search;
use Moose::Role;
use JSON;

sub search {
    my ( $self, $params) = @_;

    my $request;
    $request =
      $self->new_request( 'GET',
        [ $self->search_prefix, "select" ], $params ) unless $params->{index};
    if ( $params->{index} ){
        my $index = delete $params->{index};
        $request =
            $self->new_request( 'GET',
                [ $self->search_prefix, $index, "select" ], $params );
    }
    
    my $http_response = $self->send_request($request);

    return if (!$http_response);

    my $status = $http_response->code;
    if ($status == 404) {
        return;
    }

    JSON::decode_json($http_response->content);
};


1;