IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 8722


Ignore:
Timestamp:
Aug 31, 2006, 12:58:34 PM (20 years ago)
Author:
jhoblitt
Message:

allow upper & lower case characters in DataStore fields
change from lower to upper case all fileset types

Location:
trunk/DataStore
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/DataStore/lib/DataStore/File.pm

    r7951 r8722  
    11# Copyright (C) 2006  Joshua Hoblitt
    22#
    3 # $Id: File.pm,v 1.13 2006-07-22 01:17:33 smalle Exp $
     3# $Id: File.pm,v 1.14 2006-08-31 22:58:34 jhoblitt Exp $
    44
    55package DataStore::File;
     
    99
    1010use vars qw($VERSION);
    11 $VERSION = '0.02';
     11$VERSION = '0.03';
    1212
    1313use base qw( DataStore::Record );
     
    229229    my $ua = LWP::UserAgent->new;
    230230    my $request = HTTP::Request->new(GET => $self->uri);
    231     my $response = $ua->request($request, $p{filename});
     231    my $filename = $p{filename};
     232    my $response = $ua->request($request, $filename);
    232233
    233234    if ($response->is_success) {
    234235        # check size
    235236        if (defined $self->bytes) {
    236             my $size = stat($p{filename})->size;
     237            my $size = stat($filename)->size;
    237238            if (! $self->bytes == $size) {
    238                 unlink $p{filename};
     239                unlink $filename;
    239240                carp "uri: ", $self->uri,
    240241                     " - expected size: ", $self->bytes,
    241242                     " got: ", $size;
    242                 return;
     243                # set the filename to undef to indicate an error
     244                $filename = undef;
     245                last;
    243246            }
    244247        }
    245248
    246249        if (defined $self->md5sum) {
    247             my $md5 = file_md5_hex($p{filename});
     250            my $md5 = file_md5_hex($filename);
    248251            if (! $self->md5sum eq $md5) {
    249                 unlink $p{filename};
     252                unlink $filename;
    250253                carp "uri: ", $self->uri,
    251254                     " - expected md5: ", $self->md5sum,
    252255                     " got: ", $md5;
    253                 return;
     256                # set the filename to undef to indicate an error
     257                $filename = undef;
     258                last;
    254259            }
    255260        }
     
    261266        code        => $response->code,
    262267        status_line => $response->status_line,
    263         data        => $p{filename},
     268        data        => $filename,
    264269        request     => $self,
    265270    );
  • trunk/DataStore/lib/DataStore/Utils.pm

    r7951 r8722  
    11# Copyright (C) 2006  Joshua Hoblitt
    22#
    3 # $Id: Utils.pm,v 1.2 2006-07-22 01:17:33 smalle Exp $
     3# $Id: Utils.pm,v 1.3 2006-08-31 22:58:34 jhoblitt Exp $
    44
    55package DataStore::Utils;
     
    99
    1010use vars qw( $VERSION );
    11 $VERSION = '0.01';
     11$VERSION = '0.02';
    1212
    1313use base qw( Exporter );
     
    3838);
    3939
    40 $STD_FIELD = qr/^[a-z0-9-_.]+$/;
     40$STD_FIELD = qr/^[A-z0-9-_.]+$/;
    4141$TIME_FIELD = qr/^(\d{4})-(\d\d)-(\d\d) T (\d\d):(\d\d):(\d\d) Z$/x;
    4242$BYTE_FIELD = qr/^\d+$/;
    4343$MD5_FIELD = qr/^[0-9a-f]{32}$/;
    4444%KNOWN_FILE_TYPES = map { $_ => 1 } qw( chip );
    45 %KNOWN_FILESET_TYPES = map { $_ => 1 } qw( object domeflat skyflat bias dark );
     45%KNOWN_FILESET_TYPES = map { $_ => 1 } qw( OBJECT BIAS DARK SKYFLAT DOMEFLAT );
    4646%KNOWN_PRODUCT_TYPES = map { $_ => 1 } qw( image dump );
    4747
  • trunk/DataStore/t/02_fileset_parse.t

    r7951 r8722  
    33# Copyright (C) 2006  Joshua Hoblitt
    44#
    5 # $Id: 02_fileset_parse.t,v 1.7 2006-07-22 01:17:34 smalle Exp $
     5# $Id: 02_fileset_parse.t,v 1.8 2006-08-31 22:58:34 jhoblitt Exp $
    66
    77use strict;
     
    6868    my $parser = DataStore::FileSet::Parser->new;
    6969
    70     is($parser->parse('|2006-01-01T00:03:04Z|object'), undef,
     70    is($parser->parse('|2006-01-01T00:03:04Z|OBJECT'), undef,
    7171        '->parse() returns undef on failure');
    7272} qr/does not conform /,
     
    7676    my $parser = DataStore::FileSet::Parser->new;
    7777
    78     is($parser->parse('foobar|2006-01-0100:03:04Z|object'), undef,
     78    is($parser->parse('foobar|2006-01-0100:03:04Z|OBJECT'), undef,
    7979        '->parse() returns undef on failure');
    8080} qr/does not conform /,
     
    109109my $example1 =<<END;
    110110# filesetID|time registered    |type   |telescope pointing         |etime|f|airmass|
    111 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    112 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    113 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    114 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     111otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     112otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     113otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     114otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    115115END
    116116    my $parser  = DataStore::FileSet::Parser->new(
     
    126126my $example1 =<<END;
    127127# filesetID|time registered    |type   |telescope pointing         |etime|f|airmass|
    128 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    129 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    130 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    131 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     128otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     129otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     130otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     131otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    132132END
    133133    my $parser  = DataStore::FileSet::Parser->new(
     
    142142    is(@$results[0]->fileset, 'otis0123456', 'correct fileset');
    143143    is(@$results[0]->datetime, '2006-01-01T00:03:04Z', 'correct datetime');
    144     is(@$results[0]->type, 'object', 'correct type');
     144    is(@$results[0]->type, 'OBJECT', 'correct type');
    145145    is(@$results[0]->uri, 'http://foo.com/otis0123456/', 'correct uri');
    146146
     
    148148    is(@$results[1]->fileset, 'otis0123456', 'correct fileset');
    149149    is(@$results[1]->datetime, '2006-01-01T00:03:04Z', 'correct datetime');
    150     is(@$results[1]->type, 'object', 'correct type');
     150    is(@$results[1]->type, 'OBJECT', 'correct type');
    151151    is(@$results[1]->uri, 'http://foo.com/otis0123456/', 'correct uri');
    152152
     
    154154    is(@$results[2]->fileset, 'otis0123456', 'correct fileset');
    155155    is(@$results[2]->datetime, '2006-01-01T00:03:04Z', 'correct datetime');
    156     is(@$results[2]->type, 'object', 'correct type');
     156    is(@$results[2]->type, 'OBJECT', 'correct type');
    157157    is(@$results[2]->uri, 'http://foo.com/otis0123456/', 'correct uri');
    158158
     
    160160    is(@$results[3]->fileset, 'otis0123456', 'correct fileset');
    161161    is(@$results[3]->datetime, '2006-01-01T00:03:04Z', 'correct datetime');
    162     is(@$results[3]->type, 'object', 'correct type');
     162    is(@$results[3]->type, 'OBJECT', 'correct type');
    163163    is(@$results[3]->uri, 'http://foo.com/otis0123456/', 'correct uri');
    164164}
     
    172172
    173173                            # random comment
    174 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     174otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    175175
    176176                            # random comment
     
    185185    is(@$results[0]->fileset, 'otis0123456', 'correct fileset');
    186186    is(@$results[0]->datetime, '2006-01-01T00:03:04Z', 'correct datetime');
    187     is(@$results[0]->type, 'object', 'correct type');
     187    is(@$results[0]->type, 'OBJECT', 'correct type');
    188188}
  • trunk/DataStore/t/05_product.t

    r6633 r8722  
    33# Copyright (C) 2006  Joshua Hoblitt
    44#
    5 # $Id: 05_product.t,v 1.4 2006-03-17 23:54:35 jhoblitt Exp $
     5# $Id: 05_product.t,v 1.5 2006-08-31 22:58:34 jhoblitt Exp $
    66
    77use strict;
     
    108108    my $string = <<END;
    109109# filesetID|time registered    |type   |telescope pointing         |etime|f|airmass|
    110 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    111 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    112 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    113 otis0123456|2006-01-01T00:03:04Z|object|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     110otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     111otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     112otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
     113otis0123456|2006-01-01T00:03:04Z|OBJECT|11:00:10.33 68:26:59.6 2000|30.0 |r|1.23   |
    114114END
    115115
  • trunk/DataStore/t/06_fileset.t

    r6649 r8722  
    33# Copyright (C) 2006  Joshua Hoblitt
    44#
    5 # $Id: 06_fileset.t,v 1.7 2006-03-20 22:03:29 jhoblitt Exp $
     5# $Id: 06_fileset.t,v 1.8 2006-08-31 22:58:34 jhoblitt Exp $
    66
    77use strict;
     
    3636        fileset     => '12buckelyourshoe',
    3737        datetime    => '2042-01-01T00:00:00Z',
    38         type        => 'object',
     38        type        => 'OBJECT',
    3939    );
    4040
     
    4747        fileset     => '12buckelyourshoe',
    4848        datetime    => '2042-01-01T00:00:00Z',
    49         type        => 'object',
     49        type        => 'OBJECT',
    5050        foo         => 1,
    5151    );
     
    119119        fileset     => '12buckelyourshoe',
    120120        datetime    => '2042-01-01T00:00:00Z',
    121         type        => 'object',
     121        type        => 'OBJECT',
    122122    );
    123123
     
    130130        fileset     => '12buckelyourshoe',
    131131        datetime    => '2042-01-01T00:00:00Z',
    132         type        => 'object',
     132        type        => 'OBJECT',
    133133    );
    134134
     
    157157        fileset     => '12buckelyourshoe',
    158158        datetime    => '2042-01-01T00:00:00Z',
    159         type        => 'object',
     159        type        => 'OBJECT',
    160160    );
    161161
Note: See TracChangeset for help on using the changeset viewer.