/[webpac2]/trunk/lib/WebPAC/Store.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/WebPAC/Store.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 299 by dpavlin, Mon Dec 19 20:55:05 2005 UTC revision 710 by dpavlin, Mon Sep 25 18:58:43 2006 UTC
# Line 10  use Data::Dumper; Line 10  use Data::Dumper;
10    
11  =head1 NAME  =head1 NAME
12    
13  WebPAC::Store - Store normalized data on disk  WebPAC::Store - Store WebPAC data on disk
14    
15  =head1 VERSION  =head1 VERSION
16    
17  Version 0.09  Version 0.10
18    
19  =cut  =cut
20    
21  our $VERSION = '0.09';  our $VERSION = '0.10';
22    
23  =head1 SYNOPSIS  =head1 SYNOPSIS
24    
25  This module provides disk storage for normalised data.  This module provides disk storage for normalised data and lookups.
26    
27  It is newest component of WebPAC, so it will change quite often or be in  It is one of newer components of WebPAC, so it will change from time to
28  flux. However, I will try to keep backward compatiblity by providing  time.
29  multiple back-ends.  
30    I will try to keep backward compatiblity by providing multiple back-ends,
31    but this can't be garanteed. In other words, don't delete your input
32    databases just yet :-)
33    
34  This has additional advantage. I can create single place to plugin other  This has additional advantage. I can create single place to plugin other
35  file formats which provide better performance for particular type of data.  file formats which provide better performance for particular type of data.
# Line 62  Mandatory parametar C<database> is used Line 65  Mandatory parametar C<database> is used
65    
66  sub new {  sub new {
67          my $class = shift;          my $class = shift;
68          my $self = {@_};          my $self = {@_};
69          bless($self, $class);          bless($self, $class);
70    
71          my $log = $self->_get_logger();          my $log = $self->_get_logger();
72    
# Line 172  sub load_ds { Line 175  sub load_ds {
175          my $cache_file = "$cache_path/$database/$prefix/$id";          my $cache_file = "$cache_path/$database/$prefix/$id";
176          $cache_file =~ s#//#/#go;          $cache_file =~ s#//#/#go;
177    
 open(my $fh, '>>', '/tmp/foo');  
 print $fh "LOAD $cache_path / $database / $prefix / $id ==> $cache_file\n";  
 close($fh);  
   
178          $log->debug("using cache_file $cache_file");          $log->debug("using cache_file $cache_file");
179    
180          if (-r $cache_file) {          if (-r $cache_file) {
# Line 249  sub save_ds { Line 248  sub save_ds {
248    
249  }  }
250    
251    =head2 save_lookup
252    
253      $db->save_lookup( $database, $input, $key, $lookup );
254    
255    =cut
256    
257    sub save_lookup {
258            my $self = shift;
259            my ($database, $input, $key, $lookup) = @_;
260    
261            my $log = $self->_get_logger;
262    
263            my $path = $self->{'path'} . "/lookup/$input";
264    
265            mkpath($path) unless (-d $path);
266    
267            $path .= "/$key";
268    
269            if (store $lookup, $path) {
270                    $log->info("saved lookup $path");
271            } else {
272                    $log->logwarn("can't store lookup $database/$input/$key in $path: $!");
273            }
274    
275            
276    }
277    
278    
279  =head1 AUTHOR  =head1 AUTHOR
280    
281  Dobrica Pavlinusic, C<< <dpavlin@rot13.org> >>  Dobrica Pavlinusic, C<< <dpavlin@rot13.org> >>

Legend:
Removed from v.299  
changed lines
  Added in v.710

  ViewVC Help
Powered by ViewVC 1.1.26