Changeset 162
- Timestamp:
- 12/18/05 16:20:50 (18 years ago)
- Location:
- trunk/soft/ObsData/ObsData
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/soft/ObsData/ObsData/Archive.pm
- Property cvs2svn:cvs-rev changed from 1.12 to 1.13
r161 r162 5 5 use strict; 6 6 use warnings; 7 use ObsData::Archive::FlatFile;8 use ObsData::Archive::Compressed;9 use ObsData::Archive::Tar;10 use ObsData::Archive::Zip;11 use ObsData::Archive::Rar;7 require ObsData::Archive::FlatFile; 8 require ObsData::Archive::Compressed; 9 require ObsData::Archive::Tar; 10 require ObsData::Archive::Zip; 11 require ObsData::Archive::Rar; 12 12 13 13 our $CVSID = q$Id$; … … 15 15 16 16 my $error = {}; 17 18 my @dynload = (); 19 20 sub register { 21 my ($rule, $class, $priority) = @_; 22 push( 23 @dynload, 24 { 25 rule => $rule, 26 class => $class, 27 priority => $priority, 28 } 29 ); 30 1; 31 } 17 32 18 33 sub new { … … 36 51 37 52 for ($archive) { 38 /\.tar(\.[^\.]*)?$/ and do { 39 $beclass = 'Tar'; 40 last; 41 }; 42 /\.(gz|bz2|Z)$/ and do { 43 $beclass = 'Compressed'; 44 last; 45 }; 46 /\.zip$/ and do { 47 $beclass = 'Zip'; 48 last; 49 }; 50 /\.rar$/ and do { 51 $beclass = 'Rar'; 52 last; 53 }; 54 $beclass = 'FlatFile'; 53 foreach my $r (sort { $a->{priority} <=> $b->{priority} } @dynload) { 54 if (ref($r->{rule}) eq 'CODE' ? 55 $r->{rule}->($_) : 56 /$r->{rule}/) { 57 $beclass = $r->{class}; 58 last; 59 } 60 } 55 61 } 56 62 -
trunk/soft/ObsData/ObsData/Archive/Compressed.pm
- Property cvs2svn:cvs-rev changed from 1.7 to 1.8
r160 r162 74 74 } 75 75 76 1;76 ObsData::Archive::register(sub { $_[0] =~ /\.(gz|Z|bz2)$/i }, 'Compressed', 5); -
trunk/soft/ObsData/ObsData/Archive/FlatFile.pm
- Property cvs2svn:cvs-rev changed from 1.1 to 1.2
r158 r162 59 59 } 60 60 61 1;61 ObsData::Archive::register('.*', 'FlatFile', 10); -
trunk/soft/ObsData/ObsData/Archive/Rar.pm
- Property cvs2svn:cvs-rev changed from 1.2 to 1.3
r160 r162 74 74 } 75 75 76 1;76 ObsData::Archive::register(sub { $_[0] =~ /\.rar$/i }, 'Rar', 0); -
trunk/soft/ObsData/ObsData/Archive/Tar.pm
- Property cvs2svn:cvs-rev changed from 1.5 to 1.6
r160 r162 81 81 } 82 82 83 1; 83 ObsData::Archive::register( 84 sub { 85 $_[0] =~ /\.tar\.(gz|bz2|Z)$/i; 86 }, 87 'Tar', 88 0 89 ); -
trunk/soft/ObsData/ObsData/Archive/Zip.pm
- Property cvs2svn:cvs-rev changed from 1.2 to 1.3
r160 r162 74 74 } 75 75 76 1;76 ObsData::Archive::register(sub { $_[0] =~ /\.zip$/i }, 'Zip', 5);
Note: See TracChangeset
for help on using the changeset viewer.