[Foundation] Call For Arbitration: File Transfer
reatmon at jabber.org
Tue Aug 26 06:12:41 CDT 2003
Justin Karneges wrote:
> On Monday 25 August 2003 11:05 am, Ryan Eatmon wrote:
>>3) How do you handle a failure during a stream transfer?
>>REL requires that you try and send the file again and again until it
>>succeeds, or you hit a keep alive limit.
>>SI just stops and the file is not transfered. It is left up to the user to
>>It is simple enough for an author to support automation within their Client
>>without requiring it in the protocol.
> Could you explain how you plan to automate this? It has been noted repeatedly
> by Aleksey and myself that SI is not capable of doing this properly. I don't
> see how a council meeting makes the problem magically disappear.
> I already proposed a solution for this, which is to add an optional
> <keepAlive/> element into <si> that behaves just like REL's. However, this
> has yet to be added into JEP-95.
Basically, all you really care about is the automation on your side of
the connection. If your client detects a failure and you are the
sender, then you just resend the stream back to the other side until
they get tired of you trying to send the file and elect not to accept
it, or it transmits successfully. You can also vary the methods of
transmission that you send to them as well as which stream hosts you use
for the bytestreams JEP.
As a receiver in the above, if I don't support automation then I will
present the user with a new dialog for each new attempt. Or I can code
up something to keep track of previous profiles and use the
filename/size/md5 as a key to see that I already accepted it and not
present the user with a dialog.
There is no reason to make everyone's life complicated by requiring them
to support automation via the protocol. All you have to do is support
it on your side.
>>We have also discussed a few other Profiles that we think would be simple
>>to create using this methodology, one of them being JEP-105 Tree Transfer
>>Stream Initiation Profile for transferring entire directory structures and
>>not just single files at a time.
> As I stated in a previous email to standards-jig regarding JEP-105:
> "Maybe I'm dense, but why is this even an SI profile? It doesn't appear to
> use a stream at all."
This depends on how you define a stream. If you expand your definition
of a stream to include a stream of streams (is that a river?) then you
can see that it uses SI/Profiles to establish multiple child streams in
one go. If you accept being sent the directory structure, and you pick
the method, you just automatically accepted N streams.
As the author I know I'm biased, but I think it's a pretty cool little
trick. Just have to find time to implement it. Maybe I'll do that today.
> Members mailing list
> Members at jabber.org
reatmon at jabber.org
More information about the Members