Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Enterprise Distributed HR Ecosystem: Custom Proxy, Multi-Tiered Cache & Low-Level Storage Engine

A comprehensive, multi-tiered enterprise human resources administration platform built around distributed systems and custom persistence frameworks. The application decouples user interactions, complex validation routines, runtime heap caches, and binary file-system input/output streams into modular layers executing transparently across independent network socket lifecycles.

The entire enterprise architecture—spanning custom file serialization protocols, multi-threaded worker dispatch loops, network state synchronization matrixes, and Swing-MVC interfaces—was engineered and compiled exclusively within a primitive development context (Notepad and the Command Line Interface) to master low-level JVM memory constraints and core algorithmic execution loops without IDE crutches.


🏗️ End-to-End System Topography

[Swing Desktop UI View] <---> [DesignationModel: AbstractTableModel] (Swing-MVC Client-PL)


[DesignationManager Client Proxy]

▼ Serializes Request to Packets
[Network Client Daemon]

(Raw TCP Wire Channel)

▼ Configuration on Port 5500
[Network Server Listener]

▼ Spawns Worker Concurrent Threads
[Concurrent RequestProcessor]

▼ Reflective Routing
[Backend RequestHandler]

▼ Interacts with Layer
[In-Memory Cache (EmployeeManager)]

▼ Dynamic Disk Synchronization
[RandomAccessFile Binary Storage (DAOs)]


🧱 Architectural Deep-Dive by Tier

1. Presentation Layer Client (PL) — Event-Driven Swing MVC

Built completely using pure native Java Swing frames, layouts, and custom model implementations:

  • Decoupled View Architecture (DesignationUI): Implements a clean UI state machine that transitions seamlessly across distinct operational context states (VIEW, ADD, EDIT, DELETE). It handles visual component enablement vectors dynamically via contextual events.
  • Custom Abstract Model (DesignationModel): Rather than using lazy collection updates, the application customizes the Swing table layout by extending AbstractTableModel. It intercepts change streams, runs natural sort order bindings across rows via data comparators, and notifies listeners using precision updates (fireTableDataChanged()).
  • Real-Time Data Filtering: Integrates reactive DocumentListener interfaces over search components to monitor alphanumeric keystrokes, parsing search paths instantaneously to isolate matched collection states.
  • Document Compilation Engine: Hooks straight into enterprise iText PDF architectures, streaming structural tabular reports straight out of the active component models to flat external documents.

2. Distributed Application Network Layer

Decouples client and server runtimes through a completely handcrafted client proxy framework:

  • The Proxy Design Pattern: Client lookups run against abstract contracts (DesignationManagerInterface). The client implementation behaves as a transparent data proxy; wrapping parameters into standard generic Request envelopes, processing remote host entries via XPath configurations in a custom XML metadata engine, and forwarding frames to network clients.
  • Handshaking Execution Workers (RequestProcessor): The communication engine translates structural object states directly into byte arrays. It prefixes binary payloads with a strict 1024-byte tracking header calculating content geometry using base-10 array indices. Execution flows incorporate an iterative confirmation protocol (ack[]) to ensure complete cross-socket processing synchronization.

3. Business Logic (BL) & In-Memory Index Cache Tier

Acts as the central transaction gatekeeper to ensure total data compliance:

  • Algorithmic Lookups ($O(1)$ Complexity): Pre-fetches database entries into multi-indexed cache lookups on server startup. It maintains fast tracking structures across independent indices (employeeIdWiseEmployeesMap, panNumberWiseEmployeesMap, aadharCardNumberWiseEmployeesMap) to guarantee constant-time lookups while protecting internal structural sort boundaries through sorted TreeSet implementations.
  • Exception Aggregation Processing (BLException): Avoids fragile single-fault crash routines by using a dictionary layout (Map<String, String>) that captures and stores invalid field constraints across an entire record before returning them collectively through proxy barriers.

4. Data Layer (DL) — Custom RandomAccessFile Binary Engine

A high-performance persistence engine implemented directly over flat binary file streams (employee.data and designation.data) without third-party object-relational abstraction tools:

  • Handcrafted Relational Management: Manages record layout alignments manually using custom padding blocks. The engine tracks persistent data states through an isolated header structure containing properties like lastGeneratedCode and recordCount, updated in place via absolute byte pointers.
  • Deterministic Record Seeking: Performs record identification, update, and deletions by calculating byte boundaries dynamically. It moves low-level streams via structural pointer commands (randomAccessFile.seek()), rewriting blocks in place or toggling operational headers safely.

🛠️ Complete Technical Stack & Blueprint

  • Graphic Client Architecture: Java Swing GUI Framework (MVC Layout)
  • Core Technology: Java SE (RandomAccessFile I/O Streams, Sockets, Threading, Collections API, Reflection, Custom Annotations)
  • Enterprise Reporting Engine: iText PDF Framework
  • Configuration Processing: XML, SAX Parsers, XPath Engine
  • Build Automation: Gradle Project Modules

💻 Distributed Workflow Blueprint

1. Transparent Client Execution Matrix

// The client view executes business calls against a plain interface
DesignationManagerInterface manager = DesignationManager.getDesignationManager();

DesignationInterface newDesignation = new Designation();
newDesignation.setTitle("Senior Software Engineer");

// The Proxy implicitly catches this, serializes it, and handles the socket lifecycle
manager.addDesignation(newDesignation); 
System.out.println("Assigned Distributed ID: " + newDesignation.getCode());

About

A multi-tiered enterprise HR infrastructure featuring a custom Swing-MVC view client, transparent proxy networking layers, and an absolute low-level custom RandomAccessFile binary database engine.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages