Our Products:   CompleteFTP  edtFTPnet/Free  edtFTPnet/PRO  edtFTPj/Free  edtFTPj/PRO
0 votes
5.3k views
in .NET FTP by (160 points)
First of all, thanks for a great product!

Could you please explain the difference between the FTPClient class and the FTPConnection class. Which functionallity does FTPConnection provide (or will provide, as I understand that it's still in beta) that the FTPClient class does not have?

Will it provide an easy-to-use API for multithreaded file transfers (the protected bool isTransferringMultiple = false; let me think of this)?

I am about to 'upgrade' my spare time project from single threaded downloads to multi threaded - should I rather wait for doing this at some later time when the FTPConnection class is complete, or will that not provide what I am looking for?

And just another question on the side - the question asked here: http://www.enterprisedt.com/forums/viewtopic.php?t=397 - is the soloution something you will implement?

Best regards
Thomas Ren

3 Answers

0 votes
by
Hi Thomas

I'm pleased you like our product. FTPConnection is a completely new class. It is a wrapper around FTPClient. The motivation for it is that it is a proper .NET component and that it is easier to use than FTPClient, which is probably a bit geeky for the average VB.NET programmer.

I believe it's largely thread-safe, though I'd love to get some feedback from you on this. The FTP protocol does not support multiple concurrent downloads on the same connection, so it's not really possible with a single connection.

We will soon be releasing ProFTPConnection as a part of our commercial edtFTPnet/PRO product. Amongst other things, this will support asynchronous operations employing queuing of transfers on a single connection, which I suppose is a similar to what you're suggesting.

- Hans (EDT)
0 votes
by (160 points)
Hello Hans

Thanks for the answer.

I just, for the fun of it, changed from the FTPClient to FTPConnection - which took about 2 minutes - and it works without any problems. Furthermore i took a deeper look at the FTPConnection class and as far as I can see it doesn't give me any advantages compared to the FTPClient.

Sure the API is easier to understand for the average .NET programmer but I don't mind the 'geeky'-ness of the FTPClient class - to me it just seems that the FTPConnection 'provides' the experienced programmer with a bunch of overhead.

What would a experienced programmer get out of using the FTPConnection class instead? What advantages are there and what commen tasks does the programmer get free of doing over and over?

I am not questioning the advantage for the average programmer, but my current insight in the FTPConnection class does not really shead light on my own advantage of using it :-)

My first thought about the FTPConnection was something like - you have a FTPClient which can handle multiple (threaded) FTPConnections to the same server to support multiple concurrent downloads (if the server permits multiple concurrent connections from same user and IP).
This is surely not the intend of the FTPConnection - but if I would implement such a functionallity myself wouldn't the FTPClient class be just as good to use as the FTPConnection?

Best regards
Thomas Ren
0 votes
by
Hi Thomas

The main advantages of FTPConnection becomes apparent when you drop one on a Windows Form or a Web Form. You get a full range of properties and events that you can manipulate in the Form Designer. If you have a look at the tutorial you will see that you can write an application that lists the files on a server with only a couple of lines of code.

Since you handcoded your change from FTPClient to FTPConnection, you would not have observed this advantage, so I can understand why you are underwhelmed.

The greatest advantages however are in Pro version, which will provide a range of advanced and innovative features that I can't reveal yet (sorry :)).

- Hans (EDT)

Categories

...