papplmaker.PLS - Analysis tools module generator
# get some help
papplmaker.PLS -h
# generate module for program 'seqret'
papplmaker.PLS -n edit.seqret
# ditto, but specify where to find 'seqret'
papplmaker.PLS -n edit::seqret
-l http://localhost:8080/axis/services
# ditto, but specify a non-default access method to 'seqret'
papplmaker.PLS -n edit::seqret
-l http://corba.ebi.ac.uk/IOR/Analyses.ref
-a corba
# generate modules for all available analyses
# (using default location and default access method)
papplmaker.PLS
# do not generate but see what would be generated
papplmaker.PLS -s
papplmaker.PLS -S
# generate module for analysis 'edit::seqret'
# but name it 'MySeqret'
papplmaker.PLS -n edit::seqret -m MySeqret
# ...and use it
use MySeqret;
print new MySeqret->sequence_direct_data ('tatatacccgt')
->osformat ('embl')
->wait_for
->outseq;
# ditto but put the result into directory '/tmp/my'
# (directories do not need to exist)
papplmaker.PLS -n edit::seqret -m MySeqret -d /tmp/my/
# generate modules for all analysis whose names
# matches given regular expression (case insensitive)
papplmaker.PLS -r 'edit'
# ditto, but name generated module with your own names
# (letting papplmaker.PLS substitute parts of your names)
papplmaker.PLS -r 'edit' -m 'My_$ANALYSIS'
The module "Bio::Tools::Run::Analysis" provides access to the local
and remote analysis tools in a unified way (defined in
"Bio::AnalysisI"). The module uses general approach allowing to set
arbitrary input data and to retrieve results by naming them. However,
sometimes is more convenient to use a specific module, representing one
analysis tool, that already knows about available input and result names.
The generator "papplmaker.PLS" creates such dedicated modules.
"papplmaker.PLS" uses the same access method as the general module -
which means that depending on the parameter "access" it can use
SOAP, CORBA or any other (supported) protocol, or it can access local analysis
(available on the same machine where "papplmaker.PLS" is invoked).
"papplmaker.PLS" does its job either for one named analysis (specified
by the "-n" option, or it uses
"Bio::Tools::Run::AnalysisFactory" module in order to find what
analyses are available, and can limit their number by matching against a
regular expression given by the "-r" option.
The generated module or modules are named by default similarly to the names of
the corresponding analyses, but this can be changed by the "-m"
option which is actually a template where the following strings are recognised
and replaced:
- $ANALYSIS or ${ANALYSIS}
- Will be replaced by the name of the analysis.
- $CATEGORY or ${CATEGORY}
- Will be replaced by the name of the category where the
analysis belongs to.
- $SERVICE or ${SERVICE}
- Will be replaced by the entire name of the service (which
is usually a concatenation of a category and a analysis name, and it is
used also as a default module name, btw).
What is a difference between the "service" and "analysis",
and what does "category" mean? Sometimes these terms may be
confusing because they may mean slightly different things depending on the
access method used to communicate with them. Generally, an
"analysis" is a program (an application, a tool) running somewhere,
but sometimes on a local machine. An example of an analysis is
"seqret" (from the EMBOSS package). The analyses can be grouped into
categories by their functions or by type of data they deal with (but sometimes
there are no categories at all). Each analyses can be accessed using a higher
level of abstraction, a "service". A service is usually a
protocol-dependent wrapper, such as a Web Service, or a CORBA service. For
example there is a "edit::seqret" service which represents analysis
"seqret" in the category "edit".
User feedback is an integral part of the evolution of this and other Bioperl
modules. Send your comments and suggestions preferably to the Bioperl mailing
list. Your participation is much appreciated.
[email protected] - General discussion
http://bioperl.org/wiki/Mailing_lists - About the mailing lists
Report bugs to the Bioperl bug tracking system to help us keep track of the bugs
and their resolution. Bug reports can be submitted via the web:
http://redmine.open-bio.org/projects/bioperl/
Martin Senger (
[email protected])
Copyright (c) 2003, Martin Senger and EMBL-EBI. All Rights Reserved.
This script is free software; you can redistribute it and/or modify it under the
same terms as Perl itself.
This software is provided "as is" without warranty of any kind.
None known at the time of writing this.