NAME

Neo4j::Driver::Net::HTTP::LWP - HTTP agent adapter for libwww-perl

VERSION

version 0.23

SYNOPSIS

 use Neo4j::Driver::Net::HTTP::LWP;
 $driver->config( net_module => 'Neo4j::Driver::Net::HTTP::LWP' );

You can also extend this module through inheritance:

 use Local::MyProxy;
 $driver->config( net_module => 'Local::MyProxy' );
 
 package Local::MyProxy;
 use parent 'Neo4j::Driver::Net::HTTP::LWP';
 sub new {
   my $self = shift->SUPER::new(@_);
   $self->agent->proxy('http', 'http://proxy.example.net:8081/');
   return $self;
 }

DESCRIPTION

The Neo4j::Driver::Net::HTTP::LWP package is an HTTP networking module for Neo4j::Driver, using LWP::UserAgent to connect to the Neo4j server via HTTP or HTTPS.

HTTPS connections require LWP::Protocol::https to be installed.

METHODS

Neo4j::Driver::Net::HTTP::LWP implements the following methods; see "API of an HTTP networking module" in Neo4j::Driver::Net.

  • date_header

  • fetch_all

  • fetch_event

  • http_header

  • http_reason

  • json_coder

  • new

  • protocol

  • request

  • result_handlers

  • uri

In this module, request() always blocks until the HTTP response has been fully received. Therefore none of the other methods will ever block.

In addition to the methods listed above, Neo4j::Driver::Net::HTTP::LWP implements the following method.

agent

 use parent 'Neo4j::Driver::Net::HTTP::LWP';
 sub foo {
   my $self = shift;
   $ua = $self->agent;
   ...
 }

Returns the LWP::UserAgent instance in use. Meant to facilitate subclassing.

BUGS

The fetch_event() method has not yet been optimised.

SEE ALSO

Neo4j::Driver::Net

AUTHOR

Arne Johannessen <ajnn@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2016-2021 by Arne Johannessen.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)