oooooooooo. .oooooo. oooooooooo. ooo ooooo `888' `Y8b d8P' `Y8b `888' `Y8b `88. .888' 888 888 888 888 888 888b d'888 888oooo888' 888 888 888 8 Y88. .P 888 888 `88b 888 888 888 8 `888' 888 888 .88P `88b ooo 888 d88' 8 Y 888 o888bood8P' `Y8bood8P' o888bood8P' o8o o888o
Concurrent Download Manager (CDM) is a Java-based application that enables concurrent downloading of files from multiple URLs. The application provides a user-friendly interface for managing and monitoring download tasks. I built it to prove my proficiency in Java and will continue to improve upon it as time goes on.
- Concurrent Downloads: Download multiple files concurrently, enhancing download speed.
- Pause and Resume: Pause and resume downloads at any time.
- Progress Monitoring: Track the progress of individual downloads.
- User Interface: Simple and intuitive user interface for easy navigation.
- Java Development Kit (JDK) installed on your machine.
-
Clone the repository to your local machine.
git clone [email protected]:akibeulah/ConcurrentDownloadManager.git
-
Navigate to the project directory.
cd concurrent-download-manager
-
Compile the main class (e.g.,
MainWindow
) usingjavac
.javac src/ui/windows/MainWindow.java
-
Run the compiled class using
java
.java src.ui.windows.MainWindow
-
Running the Application:
- Compile and run the application's main class, such as the
MainWindow
class. - Upon execution, the main window of the Concurrent Download Manager will be displayed.
- Compile and run the application's main class, such as the
-
Adding a New Download:
- Click on the "Add" icon to open the
NewDownloadWindow
. - Enter the desired URL into the text field and click the "Add" button.
- The new download will be added to the list of downloads.
- Click on the "Add" icon to open the
-
Managing Downloads:
- The main window provides options to pause or resume downloads and view additional details.
- Pausing or resuming a download is achieved by clicking the respective icons.
- Additional functionalities can be added based on the placeholder button.
-
Saving and Loading State:
- The application state is automatically saved to a binary file (
./tmp/CDM_BIN
) whenever there is a change in the state. - The state is loaded from the file during application startup.
- The application state is automatically saved to a binary file (
This project is licensed under the MIT License - see the LICENSE.md file for details.
Feel free to fork this project and build upon it. You are welcome to use, modify, and distribute the code as per the terms of the MIT License.
If you'd like to contribute or have suggestions, reach out on Twitter or create a pull request. I appreciate your interest and support!