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

NAME

Perinci::Access::Simple::Server::Pipe - (Base) class for creating Riap::Simple server over pipe

VERSION

version 0.15

SYNOPSIS

In /path/to/your/program:

 #!/usr/bin/perl
 package MyRiapServer;
 use Moo;
 extends 'Perinci::Access::Simple::Server::Pipe';

 # override some methods ...

 package main;
 MyRiapServer->run;

Accessing the server via Perinci::Access:

 % perl -MPerinci::Access -e'my $pa = Perinci::Access->new;
   my $res = $pa->request(call => "riap+pipe:/path/to/your/prog////Foo/func");

DESCRIPTION

This module is a class for creating Riap::Simple server over pipe. Riap requests will be read from STDIN, and response sent to STDOUT.

By default, the handle() method processes the Riap request using Perinci::Access::Schemeless. You can customize this by overriding the method. The Riap request is in req. Method should set res to the Riap response.

This module uses Log::Any for logging.

This module uses Moo for object system.

FUNCTIONS

None are exported by default, but they are exportable.

ATTRIBUTES

req => HASH

The current Riap request.

res => HASH

The current Riap response.

METHODS

run()

The main method. Will start a loop of reading request from STDIN and sending response to STDOUT. Riap request will be put to req attribute.

handle()

The method that will be called by run() to set res attribute. By default it will pass the request to Perinci::Access::Schemeless. You can override this method to provide custom behavior.

send_response()

The method that sends res to client (STDOUT).

SEE ALSO

Riap::Simple, Riap, Rinci

Perinci::Access::Simple::Server::Socket.

HOMEPAGE

Please visit the project's homepage at https://metacpan.org/release/Perinci-Access-Simple-Server.

SOURCE

Source repository is at https://github.com/sharyanto/perl-Perinci-Access-Simple-Server.

BUGS

Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Perinci-Access-Simple-Server

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

Steven Haryanto <stevenharyanto@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by Steven Haryanto.

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