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

NAME

WWW::Snooze::Request - Main request object featuring autoloading

METHODS

new(%args)

headers

Override headers with an instance of HTTP::Headers

serializer

Override serializer with and instance of WWW::Snooze::Serialize

get([\%data])

delete([\%data])

post([\%data])

put([\%data])

Perform HTTP operation on URL, %data is encoded using the serializer.

AUTOMATIC METHODS

The request object uses autoloading method names to build the request. Calling a method on the request object will add that method name on to the URL stack and return a new request object with the new stack.

[$element]($id, %query_string)

Automatic methods can be called with an id argument, or undef if there is no id, and named parameters which are encoded to a query string

    my $r = WWW::Snooze::Request->new('http://example.com');
    
    $r->foo();
    # Request URL would be http://example.com/foo.json
    
    $r->foo(42)->bar;
    # http://example.com/foo/42/bar.json
    
    $r->foo(undef, foo => 'bar');
    # http://example.com/foo?foo=bar

_add_element($name, $id, %query_string)

Automatic methods are built using this private function, however you can also revert to calling this directly in the case of a namespace collision with an element or a poorly named element.

    $r->_add_element('poorly named');
    # http://example.com/poorly%20named
    
    $r->_add_element('foo', 42, foo => bar);
    # http://example.com/foo/42.json?foo=bar

ATTRIBUTES

Privately scoped to avoid namespace collision

_args()

Return query string arguments added

_serializer()

Return the serializer

_headers()

Return the HTTP::Headers object

AUTHOR

Anthony Johnson <aj@ohess.org>