NAME

App::Repository::File - a repository which stores its data in flat files

SYNOPSIS

use App::Repository::File;

(see man page for App::Repository for additional methods)

$rep = App::Repository::File->new();        # looks for %ENV, then config file

$errmsg = $rep->error();       # returns the error string for prev op ("" if no error)
$numrows = $rep->numrows();    # returns the number of rows affected by prev op
print $rep->error(), "\n" if (!$rep->_connect());

$value  = $rep->get ($table, $key,     $col,   \%options);
$value  = $rep->get ($table, \%params, $col,   \%options);
@row    = $rep->get ($table, $key,     \@cols, \%options);
@row    = $rep->get ($table, \%params, \@cols, \%options);

$nrows = $rep->set($table, $key,     $col,   $value,    \%options);
$nrows = $rep->set($table, \%params, $col,   $value,    \%options);

$row    = $rep->get_row ($table, $key,     \@cols, \%options);
$row    = $rep->get_row ($table, \%params, \@cols, \%options);

$nrows = $rep->set_row($table, $key,     \@cols, $row, \%options);
$nrows = $rep->set_row($table, \%params, \@cols, $row, \%options);
$nrows = $rep->set_row($table, undef,    \@cols, $row, \%options);

$colvalues = $rep->get_column ($table, \%params, $col, \%options);

$rows = $rep->get_rows ($table, \%params, \@cols, \%options);
$rows = $rep->get_rows ($table, \%params, $col,   \%options);
$rows = $rep->get_rows ($table, \@keys,   \@cols, \%options);

$nrows = $rep->set_rows($table, \%params, \@cols, $rows, \%options);
$nrows = $rep->set_rows($table, undef,    \@cols, $rows, \%options);
$nrows = $rep->set_rows($table, \@keys,   \@cols, $rows, \%options);

$values = $rep->get_values ($table, $key,     \@cols, \%options);
$values = $rep->get_values ($table, \%params, \@cols, \%options);
$values = $rep->get_values ($table, $key,     undef,  \%options);
$values = $rep->get_values ($table, \%params, undef,  \%options);

$values_list = $rep->get_values_list ($table, $key,     \@cols, \%options);
$values_list = $rep->get_values_list ($table, \%params, \@cols, \%options);
$values_list = $rep->get_values_list ($table, $key,     undef,  \%options);
$values_list = $rep->get_values_list ($table, \%params, undef,  \%options);

$nrows = $rep->set_values ($table, $key,     \@cols, $values, \%options);
$nrows = $rep->set_values ($table, $key,     undef,  $values, \%options);
$nrows = $rep->set_values ($table, undef,    \@cols, $values, \%options);
$nrows = $rep->set_values ($table, undef,    undef,  $values, \%options);
$nrows = $rep->set_values ($table, \%params, \@cols, $values, \%options);
$nrows = $rep->set_values ($table, \%params, undef,  $values, \%options);

DESCRIPTION

The App::Repository::File class encapsulates all access to data stored in flat files. It provides an alternate data store to a database for use with small datasets or in demonstration programs.