We had a plan for adding the feature to download files from HTTPS and FTP protocols. But due to shortage of time this could have not been done.
We wanted to add a web crawler which can extract resources linked from HTML pagesand download them in sequence, repeating the process recursively until all the pages have been downloaded or a maximum recursion depth specified by the user has been reached.This "recursive download" enables partial or complete mirroring of web sites via HTTP.
We thought of enabling the Download Manager for searching mirror sites and downloading files in parallel from these sites. If more high speed connection can be made to a site then the downloading can be done mainly from that mirror site.
The Download Manager could have divide downloading file on file segments dynamically, unlike the present accelerator that divides downloading file in segments once just before download process starts. Dynamic segmentation gives significant download performance improvement. When file download starts,it’s unclear how many connections may be opened. When new connection becomes available the largest segment to download can be divided into half. Thus new connection can start downloading file from the half of the largest file segment.Furthermore, once a connection has downloaded a segment and if the next connection has not started to download its segment yet, the Download Manger can reassign the segment to the first connection. If the next connection has started to download its segment, first connection can help other slowly working connections by dividing the largest segment in half.
· The Speed limiter normally works fine. But it does not guarantee that the speed shown in the table in each second is necessarily the exact downloaded data in that second. But however it is nearly the same. This limitation is also common to other Download Managers and the reason behind this is that the file is downloaded in segments and each segments run in separate threads independently.
· when the file download is completed the user should wait one or two second before
clearing the download because at that time the download might be rebuilding(merging of separate file segments ).
· Depending on the JDK used by the user can select different looks of the windows.
The looks of JDK 1.7 are:
All the other windows like QueueScreen & BatchDownloadScreen also support these looks.
If the download server allows the file download to resume after it has been paused this download manager will support that feature . If not then it will issue an error while resuming. Download Path :
User can select the path where the download will take place. On clicking the "Select Destination " button a window will appear like this:
Here user can also create new folder and browse the computer very easily.
Upon clicking the "ClearCompleted" button the download manager will clear all the completed download from its list without deleting the actual file.
When user chooses to "Clear" a download if the download is not completed then garbage files are also deleted .If the download is completed then it stays.
Upon clicking "Add Download" button or from Scheduled Download Screen or from Queue download Screen , a screen like this appears:
In the JoptionPane enter URL and the download will begin.
When user clicks the "Add Download with Scheduler" programme asks the user for date.
Format of date is dd-mm-yyyy (Like 19-11-1993)->19th November 1993
After user inputs date then the programme asks for time.
Format of Time is HH-mm-ss (Like 12-30-00).This is UNIVERSAL time .SO day is 00-00-00 to 24-00-00 .
Then another window comes for entering URL .
download enables to download similar files with numbered name. If you files URL
differs only in number of index representing characters then this feature can
help a lot. If some files URL’s are like this:
Then simply specify ”http://www.mysite.com/music/*.mp3” in batch download link and specify range from 1 to 15 and wildcard limit 3. Wildcard limit specifies the number of digits to replace here which is 3. If the file is indexed with character then the range can also be specified using letters.
After this just press Ok.
· User can reset all text field by clicking reset button
· User can also select how to download the batch files:
Either to download all the files parallel or to download with a queue.
· The speed limiter sets the upper limit of the bandwidth. If the user wants to download different files with different speed then he can do so by selecting that download in the download table and then go to “Features” then “speed limiter”. User can enter any interger value to set the download speed. But for the purpose of avoiding wrong user input we have set at least 5 KB must be entered.
· An Error saying "No Download Selected" comes up if no download is selected to limit speed
Four queue has been provided for the user to download with queue
A queue Screen appears when one of button is clicked. This screen is almost like the main screen.
In a queue you can only pause ,resume & clear topmost download.
There are two buttons on the bottom of the screen to swap the download. But you cannot swap other downloads with the topmost one
Perhaps the most advanced feature added to this download manager is the file split download.
In this feature the file is split into 4 part and downloaded simultaneously .Upon completion the four files are merged together into the desired file.
But for this feature to work the server must support :
html response code 206 : Partial Content Downloading. In this system the server is delivering only part of the resource due to a range header sent by the client. The range header is used to split a download into multiple simultaneous streams
4 Download Stream working simultaneously:
After The Download is completed: