our $contest;
my $redis = Redis->new;
+my $pubsub = Redis->new;
sub dynsub{
no strict 'refs';
for my $cmd (qw/multi exec smembers get hget hset sadd srem incr hmset hsetnx/) {
dynsub uc $cmd, sub { say "Arguments to \U$cmd: ", join ', ', @_; $redis->$cmd(@_) };
}
+
+ for my $cmd (qw/publish subscribe wait_for_messages/) {
+ dynsub uc $cmd, sub { say "Arguments to \U$cmd: ", join ', ', @_; $pubsub->$cmd(@_) };
+ }
}
sub cp { defined $contest ? "contest.$contest." : '' }
dynsub "push_$name", sub {
my $nr = INCR cp . $name;
HMSET cp . "$name.$nr", @_;
+ $nr
};
}
defhash problem => qw/name level statement/;
defhash contest => qw/start end name owner/;
-defhash job => qw/date file name private problem result result_text user/;
+defhash job => qw/date extension filesize private problem result result_text user/;
our @EXPORT_OK = do {
no strict 'refs';