Вы находитесь на странице: 1из 33

A Project Report on

SIMPLE DOWNLOAD MANAGER

Submitted in partial fulfillment of requirements for the award of degree Bachelor of Technology In Computer Science &Engineering By

B.V.Ramaraju K.Sriram P.Harini D.Nageswara Rao


07221A0508 07221A0522 07221A0515 07221A0512

Under the esteemed guidance of Mr.Y.M.S.D.Sastry Assistant Professor, CSE Dept

ABSTRACT
The Download Manager a simple yet effective GUI

interface. The GUI maintains a list of downloads that are currently being managed. Each download in the list reports its URL , size of the file in bytes ,progress as percentage towards completion , and current status. The downloads can each be in one of the following different states : Downloading , Paused , Complete ,Error , or Cancelled.

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

1. Introduction
1.1 What is Download Manager
Download Manager is a tool that manages Internet

downloads for you and makes simple work of resuming interrupted downloads. It also lets you pause and then resume a download , and manages multiple downloads , simultaneously.

1.2 Front End


Simple download manager is developed by using

JAVA Swing Library as Front End. 1.3 Back End Simple Download Manager uses File System as Back End. It stores all the downloaded files in File System.

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

2. Analysis
2.1 Scope and Analysis of the system
The Download Manager uses a simple yet effective GUI

interface built with javas swing libraries. The GUI maintains a list of downloads that are currently being managed. Each download in the list reports its URL, size of the files in bytes , progress as a percentage toward completion, and current status. The downloads can each be in one of the following different states: Downloading, Paused, Complete, Error, or Cancelled.

2.2 Existing System


Download Managers are developed under very high

weight components. These are very large in size. These occupy a very large amount of Main Memory.

2.3 Requirements Specification


Hardware Requirements: Minimum 512MB RAM P-III /P-1Vprocessor or equivalent High speed internet connection Software Requirements: Operating System - Windows and UNIX flavoured systems. Front End - JAVA(Swing Libraries) Back End - OS File System JAVA Run time environment(JRE) High Speed Internet.

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

3.Design
3.1 Modules
Add download Pause Resume Cancelled Clear

Add Download
This module is used to add the Url to the download list.

Pause
This module is used to pause the selected download.

Resume This module is used to continue the paused download. Cancel This module is used to cancel the download. Clear This module is used to clear the error, completed andcanceled downloads.

3.2 Control flow


Add URL

Validation URL valid Downloading

invalid

Display error message

Pause

completed

cancel

Cancel or Resume

clear

clear

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

How? it resumes.
HTTP downloads come in to forms: resumable (HTTP

1.1) and nonresumable (HTTP 1.0). With HTTP 1.0, a client can only request that a server send it a file. with HTTP 1.1, a client can request that a server send it complete file or specific portion of file. This is the feature the Download Manager is built on.

HTTP 1.1
12 11 10

If
buffer2

bu

6 5
4

ffe

9 8

ri

sf

ull
e qu s o tf r

un

9 it

6
5

4
3

un

3 2 1

buffer1

Re

it

2
1

7
Primary memory buffer3

Random Access File in secondary memory

ve

8 ec ei

http 1.1 file in server

HOW? It in our code.


Private static final int MAX_BUFFER_SIZE=1024; RandomAccessFile file=new RandomAccessFile(getFileName(url),rw); While(status==DOWNLOADING){ Byte buffer[]; If(size_of_file-downloaded>MAX_BUFFER_SIZE){ buffer=new byte[MAX_BUFFER_SIZE]; } else{ buffer=new byte[size_of_file-downloaded]; } //after fill that buffer File.write(buffer,0,read);

HOW? it can manage multiple downloads , simultaneously


Its possible by using Object-Oriented Programming

&Multithread Programming object-oriented design is very powerful because it possible to provide reusable code. Multithreading is a way of building applications with multiple threads . This means a single program can perform two are more tasks simultaneously.

When new download is add then new download object is added to queue

Download object1

Download object2

Download object3

Download object4

Download object5

When download is removed

Download Manager

dow1

dow2

dow3

dow4

dow5

dow6

error
paused

cancelled

downloading complete

resumed

How? Multiple downloads are implemented


in code.
Class Download extends Observable implements Runnable{ //this is download class, when new download add object of these

class is created&run method of these class execute concurrently with other download objects } Download dow1=new Download(download1_url); Download dow2=new Download(download2_url); Download dow3=new Download(download3_url); Download dow4=new Download(download4_url); Download dow5=new Download(download5_url);

Download dow6=new Download(download6_url);

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

5.Screen shots
Main page : Download Manager

Paused & Completed & Downloading

Help

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

6. Testing
Black Box Testing
It is a method of testing software that tests the functionality of an application as oppsed to its internal structure or working.

White Box Testing(clear box testing,glass box testing, transparent box testing, structural
testing)

White Box testing is a method of testing software that tests the internal structure or working of an application.

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

7.Future Scope
Detecting the virus while downloading a file. Drag and drop support. Support for mobiles.

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

8. Conclusion
It is simple, platform independent and effective Graphical User Interface. It manages multiple Downloads. The downloads can each be in one of the following different states : Downloading , Paused , Complete ,Error , or Cancelled.

Simple Download Manager


1.Introduction 2.Analysis 3.Design 4.Coding 5.Screen Shots 6.Testing 7.Future Scope 8.Conclusion 9.Biblography

Bibliography

The Complete Reference JAVA 7th Edition java.sun.com www.roseindia.net www.codeproject.com www.oracle.com/technetwork/java/index.html www.java.com

Вам также может понравиться