LibreCat::FileStore - Abstract definition of a file storage implementation
use LibreCat::FileStore::XYZ;
my $filestore => LibreCat::FileStore::XYZ->new(%options);
my $generator = $filestore->list;
while (my $key = $generator->()) {
my $container = $filestore->get($key);
for my $file ($container->list) {
my $filename = $file->key;
my $size = $file->size;
my $checksum = $file->md5;
my $created = $file->created;
my $modified = $file->modified;
my $io = $file->data;
}
}
my $container = $filestore->get('1234');
if ($filestore->exists('1234')) {
...
}
my $container = $filestore->add('1235');
$filestore->delete('1234');
LibreCat::FileStore is an abstract definition of a file storage. File content is stored in a container given by an identifier. Each container can contain zero or more files.
Create a new LibreCat::FileStore.
Provide a listing of all available container keys. Returns an iterator with keys.
Return a LibreCat::FileStore::Container given a $key.
Creates a new container and returns a LibreCat::FileStore::Container.
Removed a container from the system.