Closed marksantcroos closed 11 years ago
This will require late binding, in one form or the other. Reason is that on::
r = saga.filesystem.File('file:///tmp/output.txt')
your implementation needs to do some things (test for existence for example), so one adaptor needs to be called. But afterwards, you do not know what will be called::
if ( random (1) > 0.5 ) :
r.copy('srm://host.net/tmp)
else :
r.copy('ssh://host.net/tmp)
so you need to be able to switch to another adaptor dynamically.
A.
I agree, but maybe it can be some light weight late binding only for "file". My point was that from a user perspective, late binding is not a requirement.
fixed in saga-python (in an ugly way though)
If one currently wants to write a local file to a remote destination one needs to write:
r = saga.filesystem.File('srm://localhost/tmp/output.txt') r.copy('srm://tbn18.nikhef.nl/dpm/nikhef.nl/home/vlemed/mark/bliss/output.txt')
Preferably this should be:
r = saga.filesystem.File('file:///tmp/output.txt') r.copy('srm://tbn18.nikhef.nl/dpm/nikhef.nl/home/vlemed/mark/bliss/output.txt')
(Maybe late binding is not required and a special case can be made for "file".)