A Java program is needed that will update files on a PC from files on a web server. The program will compare file dates and only download those files that are newer. The program should be written in java and should be designed for a simple installation, i.e. just copy the jre and program files into to a directory.
1) The program will check to see if there is an internet connection available. If not, run the program "[login to view URL]"
2) If there is an internet connection, download a text file "[login to view URL]" from a web server that contains a list of files and their update dates. This file can be in any reasonable format, it's your choice.
3) If the files on the local PC have earlier dates, then prompt the user "There are new files available, would you like to update?" with Yes and No buttons. If "No" is clicked, run the program "[login to view URL]"
4) If "Yes" is clicked the outdated files will be downloaded from the web server to a temporary file/ directory. During the download, display a message "Downloading....". Some simple activity indicator should be displayed.
5) Once the downloaded files are downloaded completely, they should be copied to the proper directory. Note that all the files are in the same directory. During the copy, display a message "Copying....". Some sort of activity indicator should be displayed.
6) After completing the download and copy, run "[login to view URL]"
7) If the program is disconnected from the Internet or server, show an error message "Connection to server lost, try again later." Then execute "[login to view URL]"
8) Downloads should be cancelable by the user. If download is cancelled, run "[login to view URL]"
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
4) Should include reasonable comments in English, especially for difficult to understand sections.
## Platform
Windows 98se,2000, XP, Vista
Java
This project was posted before, but the winning bidder wouldn't start work on the task. Please be sure you want to do this project.
There are commercially available packages that will perform online updates, but we don't want to have an update program that runs as a service. This will only run when the program is started. As mentioned we want a program that requires only a simple file copy to install... thus the choice of java and jre.