r22535 - in /trunk/libevent-rpc-perl: ./ debian/ lib/Event/ lib/Event/RPC/ t/
gregoa at users.alioth.debian.org
gregoa at users.alioth.debian.org
Mon Jun 30 18:09:33 UTC 2008
Author: gregoa
Date: Mon Jun 30 18:09:33 2008
New Revision: 22535
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=22535
Log:
New upstream release.
Added:
trunk/libevent-rpc-perl/t/06.object2.t
- copied unchanged from r22534, branches/upstream/libevent-rpc-perl/current/t/06.object2.t
trunk/libevent-rpc-perl/t/Event_RPC_Test2.pm
- copied unchanged from r22534, branches/upstream/libevent-rpc-perl/current/t/Event_RPC_Test2.pm
Modified:
trunk/libevent-rpc-perl/Changes
trunk/libevent-rpc-perl/MANIFEST
trunk/libevent-rpc-perl/META.yml
trunk/libevent-rpc-perl/README
trunk/libevent-rpc-perl/debian/changelog
trunk/libevent-rpc-perl/lib/Event/RPC.pm
trunk/libevent-rpc-perl/lib/Event/RPC/Client.pm
trunk/libevent-rpc-perl/lib/Event/RPC/Connection.pm
trunk/libevent-rpc-perl/lib/Event/RPC/Server.pm
trunk/libevent-rpc-perl/t/Event_RPC_Test.pm
trunk/libevent-rpc-perl/t/Event_RPC_Test_Server.pm
Modified: trunk/libevent-rpc-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/Changes?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/Changes (original)
+++ trunk/libevent-rpc-perl/Changes Mon Jun 30 18:09:33 2008
@@ -1,6 +1,15 @@
-$Id: Changes,v 1.14 2006/04/23 08:37:41 joern Exp $
+$Id: Changes,v 1.15 2008/06/21 12:44:49 joern Exp $
Revision history and release notes for Event::RPC:
+
+1.00 Sat Jun 21, 2008, joern
+ Notes:
+ - Time for version 1.00 ;)
+
+ Features:
+ - load_modules option added to Event::RPC::Server.
+ - timeout option added to Event::RPC::Client. Patch
+ by Strzelecki Lukasz <strzelec AT rswsystems.pl>.
0.90 Sun Apr 23, 2006, joern
Notes:
Modified: trunk/libevent-rpc-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/MANIFEST?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/MANIFEST (original)
+++ trunk/libevent-rpc-perl/MANIFEST Mon Jun 30 18:09:33 2008
@@ -19,7 +19,9 @@
t/03.cnct-auth.t
t/04.cnct-auth-ssl.t
t/05.func.t
+t/06.object2.t
t/Event_RPC_Test.pm
+t/Event_RPC_Test2.pm
t/Event_RPC_Test_Server.pm
t/ssl/server.crt
t/ssl/server.csr
Modified: trunk/libevent-rpc-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/META.yml?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/META.yml (original)
+++ trunk/libevent-rpc-perl/META.yml Mon Jun 30 18:09:33 2008
@@ -1,10 +1,12 @@
-# http://module-build.sourceforge.net/META-spec.html
-#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
-name: Event-RPC
-version: 0.90
-version_from: lib/Event/RPC.pm
-installdirs: site
-requires:
+--- #YAML:1.0
+name: Event-RPC
+version: 1.00
+abstract: ~
+license: ~
+author: ~
+generated_by: ExtUtils::MakeMaker version 6.42
+distribution_type: module
+requires:
Event: 0
Glib: 0
IO::Socket::INET: 0
@@ -12,6 +14,6 @@
Net::SSLeay: 0
Storable: 0
Test::More: 0
-
-distribution_type: module
-generated_by: ExtUtils::MakeMaker version 6.30
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.3.html
+ version: 1.3
Modified: trunk/libevent-rpc-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/README?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/README (original)
+++ trunk/libevent-rpc-perl/README Mon Jun 30 18:09:33 2008
@@ -12,8 +12,8 @@
$server->start;
----------------------------------------------------------
-
- #-- Client Code
+
+ #-- Client Code
use Event::RPC::Client;
my $client = Event::RPC::Client->new (
server => "localhost",
Modified: trunk/libevent-rpc-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/debian/changelog?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/debian/changelog (original)
+++ trunk/libevent-rpc-perl/debian/changelog Mon Jun 30 18:09:33 2008
@@ -1,3 +1,9 @@
+libevent-rpc-perl (1.00-1) UNRELEASED; urgency=low
+
+ * New upstream release.
+
+ -- gregor herrmann <gregoa at debian.org> Mon, 30 Jun 2008 20:08:37 +0200
+
libevent-rpc-perl (0.90-2) unstable; urgency=low
[ gregor herrmann ]
Modified: trunk/libevent-rpc-perl/lib/Event/RPC.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/lib/Event/RPC.pm?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/lib/Event/RPC.pm (original)
+++ trunk/libevent-rpc-perl/lib/Event/RPC.pm Mon Jun 30 18:09:33 2008
@@ -1,6 +1,6 @@
package Event::RPC;
-$VERSION = "0.90";
+$VERSION = "1.00";
$PROTOCOL = "1.00";
sub crypt {
Modified: trunk/libevent-rpc-perl/lib/Event/RPC/Client.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/lib/Event/RPC/Client.pm?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/lib/Event/RPC/Client.pm (original)
+++ trunk/libevent-rpc-perl/lib/Event/RPC/Client.pm Mon Jun 30 18:09:33 2008
@@ -1,4 +1,4 @@
-# $Id: Client.pm,v 1.12 2006/04/23 08:37:41 joern Exp $
+# $Id: Client.pm,v 1.14 2008/06/21 12:47:59 joern Exp $
#-----------------------------------------------------------------------
# Copyright (C) 2002-2006 Jörn Reder <joern AT zyn.de>.
@@ -23,6 +23,7 @@
sub get_host { shift->{host} }
sub get_port { shift->{port} }
sub get_sock { shift->{sock} }
+sub get_timeout { shift->{timeout} }
sub get_classes { shift->{classes} }
sub get_class_map { shift->{class_map} }
sub get_loaded_classes { shift->{loaded_classes} }
@@ -38,6 +39,7 @@
sub set_host { shift->{host} = $_[1] }
sub set_port { shift->{port} = $_[1] }
sub set_sock { shift->{sock} = $_[1] }
+sub set_timeout { shift->{timeout} = $_[1] }
sub set_classes { shift->{classes} = $_[1] }
sub set_class_map { shift->{class_map} = $_[1] }
sub set_loaded_classes { shift->{loaded_classes} = $_[1] }
@@ -53,8 +55,8 @@
sub new {
my $class = shift;
my %par = @_;
- my ($server, $host, $port, $classes, $class_map, $error_cb) =
- @par{'server','host','port','classes','class_map','error_cb'};
+ my ($server, $host, $port, $classes, $class_map, $error_cb, $timeout) =
+ @par{'server','host','port','classes','class_map','error_cb','timeout'};
my ($ssl, $auth_user, $auth_pass) =
@par{'ssl','auth_user','auth_pass'};
@@ -70,6 +72,7 @@
host => $server,
server => $host,
port => $port,
+ timeout => $timeout,
classes => $classes,
class_map => $class_map,
ssl => $ssl,
@@ -88,9 +91,10 @@
croak "Client is already connected" if $self->get_connected;
- my $ssl = $self->get_ssl;
- my $server = $self->get_server;
- my $port = $self->get_port;
+ my $ssl = $self->get_ssl;
+ my $server = $self->get_server;
+ my $port = $self->get_port;
+ my $timeout = $self->get_timeout;
if ($ssl) {
eval { require IO::Socket::SSL };
@@ -103,19 +107,20 @@
Proto => 'tcp',
PeerPort => $port,
PeerAddr => $server,
- Type => SOCK_STREAM
- )
- or croak
- "Can't open SSL connection to $server:$port: $IO::Socket::SSL::ERROR";
+ Type => SOCK_STREAM,
+ Timeout => $timeout,
+ )
+ or croak "Can't open SSL connection to $server:$port: $IO::Socket::SSL::ERROR";
}
else {
$sock = IO::Socket::INET->new(
Proto => 'tcp',
PeerPort => $port,
PeerAddr => $server,
- Type => SOCK_STREAM
- )
- or croak "Can't open connection to $server:$port - $!";
+ Type => SOCK_STREAM,
+ Timeout => $timeout,
+ )
+ or croak "Can't open connection to $server:$port - $!";
}
$sock->autoflush(1);
@@ -162,8 +167,8 @@
PeerPort => $port,
PeerAddr => $server,
Type => SOCK_STREAM
- )
- or croak "Can't open connection to $server:$port - $!";
+ )
+ or croak "Can't open connection to $server:$port - $!";
return $sock;
}
@@ -430,6 +435,7 @@
class_map => { "Event::RPC::Test" => "My::Event::RPC::Test" },
ssl => 1,
+ timeout => 10,
auth_user => "fred",
auth_pass => Event::RPC->crypt("fred",$password),
@@ -499,6 +505,17 @@
=back
+=head2 NETWORK OPTIONS
+
+=over 4
+
+=item B<timeout>
+
+Specify a timeout (in seconds), which is applied when connecting
+the server.
+
+=back
+
=head2 CLASS IMPORT OPTION
=over 4
Modified: trunk/libevent-rpc-perl/lib/Event/RPC/Connection.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/lib/Event/RPC/Connection.pm?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/lib/Event/RPC/Connection.pm (original)
+++ trunk/libevent-rpc-perl/lib/Event/RPC/Connection.pm Mon Jun 30 18:09:33 2008
@@ -260,7 +260,7 @@
}
# load the class if not done yet
- $self->load_class($class);
+ $self->load_class($class) if $self->get_server->get_load_modules;
# resolve object params
$self->resolve_object_params ($request->{params});
@@ -387,7 +387,7 @@
}
# (re)load the class if not done yet
- $self->load_class($class);
+ $self->load_class($class) if $self->get_server->get_load_modules;
# resolve object params
$self->resolve_object_params ($request->{params});
Modified: trunk/libevent-rpc-perl/lib/Event/RPC/Server.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/lib/Event/RPC/Server.pm?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/lib/Event/RPC/Server.pm (original)
+++ trunk/libevent-rpc-perl/lib/Event/RPC/Server.pm Mon Jun 30 18:09:33 2008
@@ -1,4 +1,4 @@
-# $Id: Server.pm,v 1.10 2006/04/23 08:37:41 joern Exp $
+# $Id: Server.pm,v 1.12 2008/06/21 12:47:59 joern Exp $
#-----------------------------------------------------------------------
# Copyright (C) 2002-2006 Jörn Reder <joern AT zyn.de>.
@@ -42,6 +42,7 @@
sub get_auth_module { shift->{auth_module} }
sub get_listeners_started { shift->{listeners_started} }
sub get_connection_hook { shift->{connection_hook} }
+sub get_load_modules { shift->{load_modules} }
sub get_auto_reload_modules { shift->{auto_reload_modules} }
sub get_active_connection { shift->{active_connection} }
@@ -67,6 +68,7 @@
sub set_auth_module { shift->{auth_module} = $_[1] }
sub set_listeners_started { shift->{listeners_started} = $_[1] }
sub set_connection_hook { shift->{connection_hook} = $_[1] }
+sub set_load_modules { shift->{load_modules} = $_[1] }
sub set_auto_reload_modules { shift->{auto_reload_modules} = $_[1] }
sub set_active_connection { shift->{active_connection} = $_[1] }
@@ -82,11 +84,16 @@
@par{'ssl','ssl_key_file','ssl_cert_file','ssl_passwd_cb'};
my ($auth_required, $auth_passwd_href, $auth_module, $loop) =
@par{'auth_required','auth_passwd_href','auth_module','loop'};
- my ($connection_hook, $auto_reload_modules) =
- @par{'connection_hook','auto_reload_modules'};
+ my ($connection_hook, $auto_reload_modules, $load_modules) =
+ @par{'connection_hook','auto_reload_modules','load_modules'};
$name ||= "Event-RPC-Server";
+ #-- for backwards compatibility 'load_modules' defaults to 1
+ if ( !exists $par{load_modules} ) {
+ $load_modules = 1;
+ }
+
if ( not $loop ) {
eval {
require Event::RPC::Loop::Event;
@@ -121,6 +128,7 @@
auth_passwd_href => $auth_passwd_href,
auth_module => $auth_module,
+ load_modules => $load_modules,
auto_reload_modules => $auto_reload_modules,
connection_hook => $connection_hook,
@@ -441,6 +449,7 @@
loop => Event::RPC::Loop::Event->new(),
host => "localhost",
+ load_modules => 1,
auto_reload_modules => 1,
connection_hook => sub { ... },
);
@@ -748,6 +757,12 @@
interface, e.g. "localhost" if you efficently want to prevent
network clients from accessing your server.
+=item B<load_modules>
+
+Control whether the class module files should be loaded
+automatically when first accesed by a client. This options
+defaults to true, for backward compatibility reasons.
+
=item B<auto_reload_modules>
If this option is set Event::RPC::Server will check on each
Modified: trunk/libevent-rpc-perl/t/Event_RPC_Test.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/t/Event_RPC_Test.pm?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/t/Event_RPC_Test.pm (original)
+++ trunk/libevent-rpc-perl/t/Event_RPC_Test.pm Mon Jun 30 18:09:33 2008
@@ -1,4 +1,4 @@
-# $Id: Event_RPC_Test.pm,v 1.3 2006/02/24 14:28:44 joern Exp $
+# $Id: Event_RPC_Test.pm,v 1.4 2008/06/21 12:44:13 joern Exp $
#-----------------------------------------------------------------------
# Copyright (C) 2002-2005 Jörn Reder <joern AT zyn.de>.
@@ -10,10 +10,15 @@
package Event_RPC_Test;
+use Event_RPC_Test2;
+
use strict;
sub get_data { shift->{data} }
+sub get_object2 { shift->{object2} }
+
sub set_data { shift->{data} = $_[1] }
+sub set_object2 { shift->{object2} = $_[1] }
sub new {
my $class = shift;
@@ -22,6 +27,7 @@
my $self = bless {
data => $data,
+ object2 => Event_RPC_Test2->new("foo"),
}, $class;
return $self;
@@ -94,5 +100,11 @@
return undef;
}
+sub new_object2 {
+ my $class = shift;
+ my ($data) = @_;
+ return Event_RPC_Test2->new($data);
+}
+
1;
Modified: trunk/libevent-rpc-perl/t/Event_RPC_Test_Server.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libevent-rpc-perl/t/Event_RPC_Test_Server.pm?rev=22535&op=diff
==============================================================================
--- trunk/libevent-rpc-perl/t/Event_RPC_Test_Server.pm (original)
+++ trunk/libevent-rpc-perl/t/Event_RPC_Test_Server.pm Mon Jun 30 18:09:33 2008
@@ -2,8 +2,6 @@
use strict;
-use Event::RPC::Server;
-use Event::RPC::Logger;
use lib qw(t);
sub start_server {
@@ -14,11 +12,12 @@
my $server_pid = fork();
die "can't fork" unless defined $server_pid;
- #-- client tries to make a log connection to
- #-- verify that the server is up and running
- #-- (20 times with a usleep of 0.25, so the
- #-- overall timeout is 10 seconds)
+ #-- Client?
if ( $server_pid ) {
+ #-- client tries to make a log connection to
+ #-- verify that the server is up and running
+ #-- (20 times with a usleep of 0.25, so the
+ #-- overall timeout is 10 seconds)
for ( 1..20 ) {
eval {
Event::RPC::Client->log_connect (
@@ -35,7 +34,15 @@
#-- wait a quarter second...
select(undef, undef, undef, 0.25);
}
+ #-- Client is finished here
+ return;
}
+
+ #-- We're in the server
+ require Event::RPC::Server;
+ require Event::RPC::Logger;
+ require Event_RPC_Test;
+ require Event_RPC_Test2;
#-- This code is mainly copied from the server.pl
#-- example and works with a command line style
@@ -91,22 +98,30 @@
# logger => $logger,
loop => $loop,
start_log_listener => 1,
+ load_modules => 0,
%auth_args,
%ssl_args,
classes => {
- 'Event_RPC_Test' => {
- new => '_constructor',
- set_data => 1,
- get_data => 1,
- hello => 1,
- quit => 1,
- clone => '_object',
- multi => '_object',
- echo => 1,
- get_cid => 1,
- get_object_cnt => 1,
- get_undef_object => '_object',
- },
+ 'Event_RPC_Test' => {
+ new => '_constructor',
+ set_data => 1,
+ get_data => 1,
+ hello => 1,
+ quit => 1,
+ clone => '_object',
+ multi => '_object',
+ get_object2 => '_object',
+ new_object2 => '_object',
+ echo => 1,
+ get_cid => 1,
+ get_object_cnt => 1,
+ get_undef_object => '_object',
+ },
+ 'Event_RPC_Test2' => {
+ new => '_constructor',
+ set_data => 1,
+ get_data => 1,
+ },
},
connection_hook => sub {
my ($conn, $event) = @_;
More information about the Pkg-perl-cvs-commits
mailing list