Assignment Description: This repository contains the source code and documentation for a Java-based command-line email client project. This project was completed as part of an academic assignment, and it serves as a command-line email client with specific functionalities.
This Java Command-Line Email Client is a versatile application designed for managing email communications in a text-based environment. It includes the following key features:
-
Recipient Management: Maintain a recipient list with various types, including official, official friends, and personal recipients, by storing recipient details in a text file.
-
Birthday Greetings: Send personalized birthday greetings to recipients on their special day. Differentiate between official friends and personal recipients when sending greetings.
-
Recipient Count: Keep track of the number of recipient objects in the application using static members.
-
Email Storage: Store all sent emails as serialized objects on the hard disk.
-
Command-Line Options: Implement a set of command-line options for actions such as adding new recipients, sending emails, viewing recipients with birthdays on the current date, retrieving sent email details on specified dates, and displaying the number of recipient objects.
-
Object-Oriented Principles: The project follows object-oriented programming principles and coding best practices for maintainability and readability.
Follow these steps to get started with the Java Email Client:
- Clone this repository to your local machine: git clone https://github.com/bhashitha99/Java_Email_Client.git
- Compile the Java code: javac EmailClient.java
- Run the application: java EmailClient
- The project utilizes external libraries like
javax.mail
for email functionality, as indicated in the assignment.
This repository is provided as-is, and the code was created for educational purposes. It may require further development and customization for production use.
Contributions to this project are not actively accepted. However, feel free to fork the repository for your own use or learning purposes.