[Bioperl-l] WrapperBase / StandAloneBlast executable() method confusion
bix at sendu.me.uk
Tue Apr 24 06:21:29 EDT 2007
I'm a little unsure of the intent for executable() in wrapper modules.
The WrapperBase version of the method and the StandAloneBlast version
have the same POD but different implementations.
WrapperBase takes as a first arg an 'exe' which it will blindly trust is
the path to a working executable. (That doesn't seem sensible already.)
It is only capable of storing one such path.
If no arg is supplied it uses program_path() (which uses program_name())
to find the executable. Failing that it does a further direct test on
program_name() to see if its executable.
StandAloneBlast takes as a first arg merely the name of your exe and
also (undocumented) the path to the corresponding executable (which is
tested to see if it really executable). It can store executable paths
for multiple different exenames (corresponding better with the docs for
the first arg: "name of executable to set path to").
If no second arg is supplied it does something similar to WrapperBase,
except that it uses the first arg exename (or a default if that wasn't
supplied) in place of program_name().
I'm trying to generalize this so StandAloneBlast can just use the
WrapperBase version (and so other wrappers can then store executable
paths for different sub-programs). Any suggestions for a good way of
melding these two together whilst somehow retaining backward compatibility?
More information about the Bioperl-l