Advertisement
Guest User

Untitled

a guest
Jan 28th, 2015
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.17 KB | None | 0 0
  1. use EV;
  2.         use Coro;
  3.         use HTTP::Server::EV;
  4.        
  5.        
  6.         my $server = HTTP::Server::EV->new;
  7.        
  8.         my $bindto = IO::Socket::INET->new(
  9.                                         Listen => 15,
  10.                                         LocalAddr => 'localhost',
  11.                                         LocalPort => 10080,
  12.                                         Proto => 'tcp',
  13.                                         # Blocking => 0,
  14.                                  );
  15.         warn $bindto;
  16.        
  17.        
  18. *HTTP::Server::EV::listen = sub {
  19.     my ($self, $socket, $cb, $params) = @_;
  20.    
  21.     die "You can`t bind two listeners on one port!\n" if $HTTP::Server::EV::listeners{$socket};
  22.    
  23.     if(int($socket) eq $socket){
  24.         $params->{port} = $socket;
  25.     }else {
  26.         $params->{socket} = $socket;
  27.     }
  28.     $params->{cb} = $cb;
  29.    
  30.  
  31.     $HTTP::Server::EV::listeners{$socket} = HTTP::Server::EV::PortListener->new($params);
  32. };
  33.        
  34.        
  35.         $server->listen($bindto, sub {
  36.                 my $cgi = shift;
  37.                
  38.                 $cgi->attach(*STDOUT);
  39.                 $cgi->header;
  40.  
  41.                 print "Just another Perl server\n";
  42.         });
  43.        
  44.         EV::run;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement