]> iEval git - gruntmaster-page.git/blobdiff - lib/Gruntmaster/Data.pm
PUBLISH should be sent on regular Redis connection
[gruntmaster-page.git] / lib / Gruntmaster / Data.pm
index e2ef0dcac0c12a3afbd8b98cc86c826137dafc53..5871a9c8296a06412b202dc8aff8f10b4484d4a4 100644 (file)
@@ -17,11 +17,11 @@ sub dynsub{
 }
 
 BEGIN {
-       for my $cmd (qw/multi exec smembers get hget hset sadd srem incr hmset hsetnx/) {
+       for my $cmd (qw/multi exec smembers get hget hdel hset sadd srem incr hmset hsetnx publish/) {
                dynsub uc $cmd, sub { say "Arguments to \U$cmd: ", join ', ', @_; $redis->$cmd(@_) };
        }
 
-       for my $cmd (qw/publish subscribe wait_for_messages/) {
+       for my $cmd (qw/subscribe wait_for_messages/) {
                dynsub uc $cmd, sub { say "Arguments to \U$cmd: ", join ', ', @_; $pubsub->$cmd(@_) };
        }
 }
@@ -33,6 +33,7 @@ sub rexec                             ()              { EXEC }
 
 sub problems                   ()              { SMEMBERS cp . 'problem' }
 sub contests                   ()              { SMEMBERS cp . 'contest' }
+sub users                              ()              { SMEMBERS cp . 'user' }
 sub jobcard                            ()              { GET cp . 'job' }
 
 sub job_results                        (_)             { decode_json HGET cp . "job.$_[0]", 'results' }
@@ -71,8 +72,13 @@ sub defhash{
 defhash problem => qw/name level statement/;
 defhash contest => qw/start end name owner/;
 defhash job => qw/date extension filesize private problem result result_text user/;
+defhash user => qw/name email town university level/;
 
-our @EXPORT_OK = do {
+sub clean_job (_){
+       HDEL cp . "job.$_[0]", qw/result result_text results daemon/
+}
+
+our @EXPORT = do {
        no strict 'refs';
        grep { $_ =~ /^[a-zA-Z]/ and exists &$_ } keys %{__PACKAGE__ . '::'};
 };
This page took 0.022956 seconds and 4 git commands to generate.