An open API service indexing awesome lists of open source software.

https://github.com/tharindu714/security-validator-banking-dialogbox

A polished Java Swing desktop app demonstrating the Chain of Responsibility pattern for real-time transaction validation.
https://github.com/tharindu714/security-validator-banking-dialogbox

banking chainofresponsibility-pattern java oodp

Last synced: 11 months ago
JSON representation

A polished Java Swing desktop app demonstrating the Chain of Responsibility pattern for real-time transaction validation.

Awesome Lists containing this project

README

          


Language: Java
License: MIT

---

# πŸ›‘οΈ Secure Banking Validator

A polished **Java Swing** desktop app demonstrating the **Chain of Responsibility** pattern for real-time transaction validation.
Detect format errors, enforce limits, and guard against fraudβ€”all before any money moves!

> **β€œValidate every transfer. Secure every transaction.”**

---

## ✨ Key Features

- **πŸ”— Chain of Responsibility**
Sequential `FormatValidator β†’ LimitValidator β†’ FraudValidator` handlers ensure each check runs in order.

- **πŸ“‹ Comprehensive Validation**
- **FormatValidator**: Required fields & numeric parsing
- **LimitValidator**: Daily transfer cap enforcement
- **FraudValidator**: Large-transaction fraud alert

- **🎨 Intuitive GUI**
Nimbus L&F, styled text fields, color-themed buttons & result pane.

- **⚑ Instant Feedback**
Real-time result messages: ❌ rejection reasons or βœ… approval details.

---

## πŸš€ Quick Start

### Prerequisites
- **Java JDK 11+**
- **Maven** (or your IDE’s build tool)
- **Git**

### Installation
```bash
git clone https://github.com/Tharindu714/Security-Validator-Banking-DialogBox.git
cd Security-Validator-Banking-DialogBox
mvn clean package
````

### Run

```bash
java -jar target/Security-Validator-Banking-DialogBox.jar
```

---

## πŸ“‚ Project Structure

```
src/
└── main/
β”œβ”€β”€ java/
β”‚ └── com/tharindu/smartBanking/
β”‚ β”œβ”€β”€ Transaction.java
β”‚ β”œβ”€β”€ Handler.java
β”‚ β”œβ”€β”€ AbstractHandler.java
β”‚ β”œβ”€β”€ FormatValidator.java
β”‚ β”œβ”€β”€ LimitValidator.java
β”‚ β”œβ”€β”€ FraudValidator.java
β”‚ └── MobileBankingApp.java
└── resources/
└── (any GUI images or icons)
```

---

## 🧩 UML Diagrams


UML

> *Add your `.png`/`.svg` diagrams under `docs/uml/`.*

---

## πŸŽ‰ Screenshot Showcase

| Enter Details | Validation in Process | Result Approved/Rejected |
| :-------------------------------------------------------------------: | :---------------------------------------------------------------------------: | :------------------------------------------------------------------------------: |
| *Step 1: Input Account & Amount* | *Step 2: Chain Validators Trigger* | *Step 3: Instant Approval/Rejection* |

> *Place high-res screenshots in `docs/images/`.*

---

## πŸ“œ License

This project is licensed under the **MIT License**. See [LICENSE](LICENSE) for details.

---


Secure your banking app with robust validation.

Get Started β†’