Connector::Builtin::File::Path
Highly configurable file writer/reader.
- LOCATION
- The base directory where the files are located. This parameter is
mandatory.
- file/path
- Pattern for Template Toolkit to build the filename. The path components
are available in the key ARGS. In set mode the unfiltered data is
available in key DATA.
See also Connector::Role::LocalPath
- content
- Pattern for Template Toolkit to build the content. The data is passed
"as is". If data is a scalar, it is wrapped into a hash using
DATA as key.
- ifexists
- append: opens the file for appending write.
- fail: call "die"
- silent: fail silently.
- replace: replace the file with the new content.
- mode
- Filesystem permissions to apply to the file when a file is written using
the set method. Must be given in octal notation, e.g. 0644. Default is to
not set the permissions and rely on the systems umask.
- user / group
- Name of a user / group that the file should belong to.
Write data to a file.
$conn->set('filename', { NAME => 'Oliver', 'ROLE' => 'Administrator' });
See the file parameter how to control the filename. By default,
files are silently overwritten if they exist. See the ifexists
parameter for an alternative behaviour.
Fetch data from a file. See the file parameter how to control the filename.
my $data = $conn->get('filename');
my $conn = Connector::Builtin::File::Path->new({
LOCATION: /var/data/
file: [% ARGS.0 %].txt
content: Hello [% NAME %]
});
$conn->set('test', { NAME => 'Oliver' });
Results in a file /var/data/test.txt with the content
Hello Oliver.