]> iEval git - plack-app-gruntmaster.git/blobdiff - lib/Gruntmaster/Data.pm
Add user hash Gruntmaster::Data
[plack-app-gruntmaster.git] / lib / Gruntmaster / Data.pm
index 544a6d060613d816a305c5e3ea6700a351523116..9504cf849b7220c6e658fc16c33a283cc5f2fd57 100644 (file)
@@ -9,6 +9,7 @@ use Redis;
 
 our $contest;
 my $redis = Redis->new;
+my $pubsub = Redis->new;
 
 sub dynsub{
        no strict 'refs';
@@ -19,6 +20,10 @@ BEGIN {
        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." : '' }
@@ -59,12 +64,14 @@ sub defhash{
        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/;
+defhash user => qw/name email town university/;
 
 our @EXPORT_OK = do {
        no strict 'refs';
This page took 0.024261 seconds and 4 git commands to generate.