NAME
InSilicoSpectro::Utils::FileCached
SYNOPSIS
DESCRIPTION
Virtual class. for caching into files object and stored them into a LIFO queue
FUNCTIONS
queueSize(nbobj=>int)
Set the queue size in muber of object;
queueOverflow()
return true/false if the queue is overflowed (then the oldest one(s) must be ejected)
verbose([boolean])
get/set verbose mode
FC_tempdir()
get the temporary file (or create one on the first call)
queueDump()
dump on STDOUT the list of managed object in memory (not the persistent ones)
dump_all()
List all the object registered and if they are in file or memory. Report looks like
METHODS
$obj->FC_persistent([boolean]);
Get/set if the object is to be persistent (i.e. to be managed by the queue). Set persitency at new time
$obj->FC_save();
Serialize and save the object into a file.
$obj->FC_load();
Load object from the file, push it on the first position; remove file;
$obj->FC_file();
Get the file for the object (create on in the tempdir is none was defined);
$obj->FC_key();
returns the unique incremented key
$obj->FC_eject();
Get the object out from the queue, save it on the disk;
Empty the object but the FileCached attributes
$ojb->FC_refresh();
Push the object on the first position of the queue
$obj->FC_getme();
Returns myself + refresh
VARIABLES
REMOVE_TEMP_FILES=bool
set to true (default) to remove temporary files at the process end
QUEUE_MAX_LEN=int
Set the size for the queue of memory resident object (to be set before starting to instanciate objects)
EXAMPLES
SEE ALSO
COPYRIGHT
Copyright (C) 2004-2006 Geneva Bioinformatics www.genebio.com
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
AUTHORS
Alexandre Masselot, www.genebio.com