/[cvs]/nfo/perl/libs/Data/Storage/Handler/File.pm
ViewVC logotype

Annotation of /nfo/perl/libs/Data/Storage/Handler/File.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations)
Sun Feb 9 04:54:27 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
Changes since 1.2: +49 -106 lines
- refactored lots of code to Data::Storage::Handler::File::Basic
- sorry!

1 joko 1.3 #!/usr/bin/perl
2    
3     ## ------------------------------------------------------------------------
4     ## $Id: modifier.pl,v 1.1 2003/02/01 02:56:03 joko Exp $
5     ## ------------------------------------------------------------------------
6     ## $Log: modifier.pl,v $
7     ## ------------------------------------------------------------------------
8    
9    
10 joko 1.1 package Data::Storage::Handler::File;
11    
12     use strict;
13     use warnings;
14    
15 joko 1.3 use base qw( DesignPattern::Object );
16    
17     =pod
18 joko 1.1 require Exporter;
19     our @ISA = qw( Exporter );
20     our @EXPORT_OK = qw(
21     s2f
22 joko 1.2 a2f
23 joko 1.1 );
24 joko 1.3 =cut
25 joko 1.1
26 joko 1.3 use Data::Storage::Handler::File::Basic qw( s2f a2f f2s );
27    
28     sub _read {
29     my $self = shift;
30     $self->{_buffer_orig} = f2s($self->{path});
31     $self->{_buffer} = f2s($self->{path});
32 joko 1.1 }
33    
34 joko 1.3 sub toString {
35     my $self = shift;
36     $self->_read();
37     return $self->{_buffer};
38     }
39 joko 1.1
40 joko 1.3 sub addSuffix {
41     my $self = shift;
42     my $suffix = shift;
43     $self->{path} .= ".$suffix";
44 joko 1.1 }
45    
46 joko 1.3 sub save {
47     my $self = shift;
48     if ($self->{_buffer}) {
49     s2f($self->{path}, $self->{_buffer});
50     } else {
51     print "please load $self->{path} before saving.", "\n";
52 joko 1.1 }
53     }
54    
55 joko 1.3 sub backup {
56     my $self = shift;
57     my $options = shift;
58     my $path = $self->{path};
59     $path .= '.' . $options->{suffix} if $options->{suffix};
60     s2f($path, $self->{_buffer_orig});
61     }
62 joko 1.1
63 joko 1.3 sub matches {
64     my $self = shift;
65     my $pattern = shift;
66     $self->_read();
67     my $eval = '$self->{_buffer} =~ ' . $pattern . ';';
68     if (eval($eval)) { return 1; }
69 joko 1.1 }
70    
71 joko 1.3 1;
72     __END__

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed