use DBIx::Recordset::FileSeq ;
$self = DBIx::Recordset::FileSeq (undef, '/tmp/seq', $min, $max) ;
$val1 = $self -> NextVal ('foo') ;
$val2 = $self -> NextVal ('foo') ;
$val3 = $self -> NextVal ('bar') ;
DESCRIPTIONDBIx::Recordset::FileSeq generates unique numbers. State is kept in the filesystem. With the new constructor you specify the directory where the state is kept. (First parameter is a dummy values, that will receive the database handle from DBIx::Recordset, but you don't need it when you use it without DBIx::Recordset). Optionaly you can give a min and a max values, which will be used for new sequences.
With NextVal you can get the next value for the sequence of the given name.
The state if kept by haveing a file with the name
Each time the sequnce value increments the file is renamed. If the <max> if a numeric value the new value is checked against <max> and NextVal dies if the sequnce value increment above max.