$Revision: 688 $
A simple data transport for tab-separated files. Access is via the 'query' method. Expects a file with no header line. By default, fields are expected to be separated with tab characters.
Can optionally cache the file contents upon first usage. This may improve subsequence response speed at the expense of memory footprint.
Queries are of the form: $filetransport->query(qq(field1 = 'value')); # =, == and eq operators all do the same thing $filetransport->query(qq(field1 lceq 'value')); $filetransport->query(qq(field3 like '%value%')); $filetransport->query(qq(field0 = 'value' && field1 = 'value')); $filetransport->query(qq(field0 = 'value' and field1 = 'value')); $filetransport->query(qq(field0 = 'value' and field1 = 'value' and field2 = 'value')); "OR" compound queries not (yet) supported
Generally not directly invoked, but if you really want to - $filetransport->DESTROY();
Run ProServer with the -debug flag.
Configured as part of each source's ProServer 2 INI file:
[myfile] ... source configuration ... transport = file filename = /data/features.tsv ; optional values: unique = 1 cache = 1 comment = ^# separator = \t If specified, query results can be treated as unique, preventing a full file parse when the first match is found. The default is to find all matches. If specified, file contents may be pre-cached in memory. The default is to re-read the file for every query. The field separator may be specified as a regular expression. The default is /\t/. Comments can be detected and ignored by providing a regular expression. There is no default.
Only AND compound queries are supported.
Roger Pettett <firstname.lastname@example.org> and Andy Jenkinson <email@example.com>
Copyright (c) 2008 The Sanger Institute and EMBL-EBI
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of warranty.