Changeset 6601
- Timestamp:
- Mar 15, 2006, 4:47:09 PM (20 years ago)
- Location:
- trunk/DataStore/lib/DataStore
- Files:
-
- 4 edited
-
File.pm (modified) (5 diffs)
-
FileSet.pm (modified) (5 diffs)
-
Product.pm (modified) (6 diffs)
-
Response.pm (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/DataStore/lib/DataStore/File.pm
r6596 r6601 1 1 # Copyright (C) 2006 Joshua Hoblitt 2 2 # 3 # $Id: File.pm,v 1. 5 2006-03-15 22:17:41jhoblitt Exp $3 # $Id: File.pm,v 1.6 2006-03-16 02:47:09 jhoblitt Exp $ 4 4 5 5 package DataStore::File; … … 36 36 use DataStore::file; 37 37 38 my $dsf = DateStore::File->new(...); 38 my $dsf = DateStore::File->new( 39 uri => 'http://example.org/foo', 40 fileid => '12buckelyourshoe', 41 bytes => 12345, 42 md5sum => 'fe6a2b6564c0d4cfb3bbf1db813824ba', 43 type => 'foo', 44 ); 45 46 my $uri = $dsf->uri; 47 my fileid = $dsf->fileid; 48 my $bytes = $dsf-bytes; 49 my $md5sum = $dsf->md5sum; 50 my $type = $dsf-type; 51 my DataStore::Response $response = $dsf->request( filename => "/foo/bar" ); 39 52 40 53 =head1 DESCRIPTION … … 54 67 55 68 =item * C<new()> 69 70 Basic constructor. 71 72 my $dsf = DateStore::File->new( 73 uri => 'http://example.org/foo', 74 fileid => '12buckelyourshoe', 75 bytes => 12345, 76 md5sum => 'fe6a2b6564c0d4cfb3bbf1db813824ba', 77 type => 'foo', 78 ); 79 80 Accepts a mandatory hash and returns a L<DataStore::Product> object. 81 82 =over 4 83 84 =item * uri 85 86 A valid I<HTTP> URI as a string. I<No trailing slash is allowed.> 87 88 =item * fileid 89 90 The FIle ID as a string. 91 92 =item * bytes 93 94 The size of the file as an integer number of bytes. 95 96 =item * md5sum 97 98 The hex encoded md5 checksum of the file. 99 100 =item * type 101 102 The type of file as a string. 103 104 =back 56 105 57 106 =cut … … 94 143 =over 4 95 144 145 =item * C<uri> 146 147 Basic accessor. 148 149 =item * C<fileid> 150 151 Basic accessor. 152 153 =item * C<bytes> 154 155 Basic accessor. 156 157 =item * C<md5sum> 158 159 Basic accessor. 160 161 =item * C<type> 162 163 Basic accessor. 164 96 165 =item * C<request()> 166 167 Retrieves and processes the File listing pointed to by the L<uri> of this 168 object. 169 170 XXX writing the file into memory or to a filehandle will be implimented upon 171 request. 172 173 my $response = $dsf->request( filename => "/foo/bar" ); 174 175 Accepts a mandatory hash and returns a L<DataStore::Response> object. 176 177 =over 4 178 179 =item * filename 180 181 The filename/path to save the file to disk as. 182 183 =back 97 184 98 185 =cut … … 158 245 } 159 246 247 =back 248 249 =head1 SEE ALSO 250 251 L<DataStore::Response> 252 253 =cut 254 160 255 1; 161 256 -
trunk/DataStore/lib/DataStore/FileSet.pm
r6587 r6601 1 1 # Copyright (C) 2006 Joshua Hoblitt 2 2 # 3 # $Id: FileSet.pm,v 1. 3 2006-03-15 03:18:25jhoblitt Exp $3 # $Id: FileSet.pm,v 1.4 2006-03-16 02:47:09 jhoblitt Exp $ 4 4 5 5 package DataStore::FileSet; … … 35 35 use DataStore::FileSet; 36 36 37 my $dsfs = DateStore::FileSet->new(...); 37 my $dsfs = DateStore::FileSet->new( 38 uri => 'http://example.org/', 39 fileset => '12buckelyourshoe', 40 datetime => '2042-01-01T00:00:00Z', 41 type => 'foo', 42 ); 43 44 my $uri = $dsfs->uri; 45 my $fileset = $dsfs->fileset; 46 my $datatime = $dsfs->datetime; 47 my $type = $dsfs->type; 48 my DataStore::Response $response = $dsfs->request; 38 49 39 50 =head1 DESCRIPTION … … 53 64 54 65 =item * C<new()> 66 67 Basic constructor. 68 69 my $dsfs = DateStore::FileSet->new( 70 uri => 'http://example.org/', 71 fileset => '12buckelyourshoe', 72 datetime => '2042-01-01T00:00:00Z', 73 type => 'foo', 74 ); 75 76 Accepts a mandatory hash and returns a L<DataStore::FileSet> object. 77 78 =over 4 79 80 =item * uri 81 82 A valid I<HTTP> URI as a string. I<A trailing slash is required.> 83 84 =item * fileset 85 86 The FileSet ID as a string. 87 88 =item * datetime 89 90 The time and date as a string. 91 92 =item * type 93 94 The I<type> of record as a string. 95 96 =back 55 97 56 98 =cut … … 91 133 =over 4 92 134 135 =item * C<uri()> 136 137 Basic accessor. 138 139 =item * C<fileset()> 140 141 Basic accessor. 142 143 =item * C<datetime()> 144 145 Basic accessor. 146 147 =item * C<type()> 148 149 Basic accessor. 150 93 151 =item * C<request()> 152 153 Retrieves and processes the File listing pointed to by the L<uri> of this 154 object. 155 156 Accepts no parameters and returns a L<DataStore::Response> object. 94 157 95 158 =cut … … 133 196 } 134 197 198 =back 199 200 =head1 SEE ALSO 201 202 L<DataStore::Response> 203 204 =cut 205 135 206 1; 136 207 -
trunk/DataStore/lib/DataStore/Product.pm
r6584 r6601 1 1 # Copyright (C) 2006 Joshua Hoblitt 2 2 # 3 # $Id: Product.pm,v 1. 3 2006-03-14 23:24:05jhoblitt Exp $3 # $Id: Product.pm,v 1.4 2006-03-16 02:47:09 jhoblitt Exp $ 4 4 5 5 package DataStore::Product; … … 43 43 ); 44 44 45 my DataStore::Response $response = $dsp->fetch; 45 my $uri = $dsp->uri; 46 my $fileset = $dsp_fileset; 47 my DataStore::Response $response = $dsp->request; 46 48 47 49 =head1 DESCRIPTION … … 64 66 Basic constructor. 65 67 66 Accepts no arguments and returns a L<DataStore::Product> object. 68 my $dsp = DataStore::Product->new( 69 uri => 'http://example.com/productid/', 70 last_fileset => 'foobar', 71 ); 72 73 Accepts a mandatory hash and returns a L<DataStore::Product> object. 74 75 =over 4 76 77 =item * uri 78 79 A valid I<HTTP> URI as a string. I<A trailing slash is required.> 80 81 =item * last_fileset 82 83 The last FileSet ID that was requested as a string. 84 85 This key is optional. 86 87 =back 67 88 68 89 =cut … … 105 126 =over 4 106 127 128 =item * C<uri()> 129 130 Basic accessor. 131 132 =item * C<last_fileset()> 133 134 Basic accessor. 135 107 136 =item * C<request()> 137 138 Retrieves and processes the FileSet listing pointed to by the L<uri> of this 139 object. 140 141 Accepts no parameters and returns a L<DataStore::Response> object. 108 142 109 143 =cut … … 118 152 # make request 119 153 my $ua = LWP::UserAgent->new; 120 my $request = HTTP::Request->new(GET => $self->uri); 154 my $request; 155 if ($self->last_fileset) { 156 $request = HTTP::Request->new( 157 GET => $self->uri . "?" . $self->last_fileset, 158 ); 159 } else { 160 $request = HTTP::Request->new(GET => $self->uri); 161 } 121 162 my $response = $ua->request($request); 122 163 … … 147 188 } 148 189 190 =back 191 192 =head1 SEE ALSO 193 194 L<DataStore::Response> 195 196 =cut 197 149 198 1; 150 199 -
trunk/DataStore/lib/DataStore/Response.pm
r6542 r6601 1 1 # Copyright (C) 2006 Joshua Hoblitt 2 2 # 3 # $Id: Response.pm,v 1. 1 2006-03-08 02:11:46jhoblitt Exp $3 # $Id: Response.pm,v 1.2 2006-03-16 02:47:09 jhoblitt Exp $ 4 4 5 5 package DataStore::Response; … … 31 31 use DataStore::Response; 32 32 33 my $dsr = DateStore::Response->new(...); 33 my $dsr = DateStore::Response->new( 34 is_success => undef, 35 code => 500, 36 status_line => 'foo', 37 data => 'bar', 38 request => DataStore::Product->new( uri => 'http://example.org/' ), 39 ); 40 41 my $success = $dsr->is_success; 42 my $code = $dsr->code; 43 my $status_line = $dsr->status_line; 44 my $data = $dsr->data; 45 my DataStore::Response $response = $dsp->request; 34 46 35 47 =head1 DESCRIPTION … … 49 61 50 62 =item * C<new()> 63 64 Basic constructor. 65 66 my $dsr = DateStore::Response->new( 67 is_success => undef, 68 code => 500, 69 status_line => 'foo', 70 data => 'bar', 71 request => DataStore::Product->new( uri => 'http://example.org/' ), 72 ); 73 74 Accepts a mandatory hash and returns a L<DataStore::Product> object. 75 76 =over 4 77 78 =item * uri 79 80 A vvalid I<HTTP> URI as a string. 81 82 =item * code 83 84 An HTTP status code. 85 86 =item * status_line 87 88 An HTTP status line. 89 90 =item * data 91 92 Either a scalar value or an arrayref of scalar data. 93 94 =item * request 95 96 An object that I<isa> L<DataStore::Record>. 97 98 =back 51 99 52 100 =cut … … 88 136 } 89 137 138 =back 139 140 =head3 Object Methods 141 142 =over 4 143 144 =item * C<uri> 145 146 Basic accessor. 147 148 =item * C<code> 149 150 Basic accessor. 151 152 =item * C<status_line> 153 154 Basic accessor. 155 156 =item * C<data> 157 158 Basic accessor. 159 160 =item * C<request> 161 162 Basic accessor. 163 164 =cut 165 90 166 1; 91 167
Note:
See TracChangeset
for help on using the changeset viewer.
