Ahed submission branch - #17
Open
AhedALbarhi wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The application is a Spring Boot–based Measurement Conversion API that parses encoded input strings, converts them into numeric values, and stores every request in an Oracle database for tracking and history management.
At its core, the app receives a specially formatted measurement string through a REST endpoint (
/convert-measurements). It then uses a custom parsing engine to break the input into logical packages based on a counter-based system. Each package is decoded using a rule set where letters map to numeric values (a = 1toz = 26,_ = 0), including a special chaining behavior for'z', which extends the value calculation.After processing, the API returns a list of computed integer results representing each package. In parallel, every request is persisted into an Oracle XE database as a history record containing the input, output, timestamp, and client IP address.
The system is structured using a clean layered architecture:
-Controllers: handle HTTP requests
-Services: contain parsing and business logic
-Repositories: manage database and in-memory storage
-Models: represent sequences and persistent history entities
Additionally, a history management API (
/input) allows retrieval, updating, and deletion of past conversion records, making the system both computational and auditable.Overall, the project is a combination of a custom encoding/decoding engine + RESTful API + database-backed audit system, built for processing structured measurement sequences efficiently and traceably.