NAME

File::FStore::Base - Module for interacting with file stores

VERSION

version v0.04

SYNOPSIS

use File::FStore;

my File::FStore::Base $obj = ...;

This package is the base package for other packages, containing common methods.

METHODS

contentise

my $ise = $file->contentise;
# or:
my $ise = $file->contentise(as => ...);

Returns the content based ISE (identifier) for the file. This can be used as a primary key for the given file in databases. It is globally unique (so can be transfered to unrelated systems without the worry of collisions).

Takes a single optional option as which is documented in "as" in Data::Identifier. Defaulting to uuid.

Note: Calculation of this identifier requires the values for size from the properties domain and the values for sha-1-160 and sha-3-512 from the digests domain.

Note: This value is only available on files that are in final state. For File::FStore::Adder this means the file file must at least be "done" in File::FStore::Adder.

ise

my $ise = $file->ise;
# or:
my $ise = $file->ise(%opts);

Returns an ISE (identifier) for this file.

Currently an alias for "contentise". Later versions may add more logic.

as

my $xxx = $base->as($as, [ %opts ] );

Proxy for "as" in Data::Identifier.

Automatically adds store to %opts if any is known (see "store").

store

my File::FStore $store = $file->store;

Returns the store this file belongs to.

db

my Data::TagDB $db = $file->db;
# or:
my Data::TagDB $db = $file->db(default => $def);

Proxy for "db" in File::FStore.

extractor

my Data::URIID $extractor = $file->extractor;
# or:
my Data::URIID $extractor = $file->extractor(default => $def);

Proxy for "extractor" in File::FStore.

fii

my File::Information $fii = $file->fii;

Proxy for "fii" in File::FStore.

AUTHOR

Löwenfelsen UG (haftungsbeschränkt) <support@loewenfelsen.net>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2025 by Löwenfelsen UG (haftungsbeschränkt) <support@loewenfelsen.net>.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)