/modulithswithwater

Demonstrates how to cleanup a poorly designed app using modules based on Spring Modulith

Primary LanguageJava

Water Level Processor

Description

This application pulls data from the USGS and determines if the water levels for selected rivers, creeks, lakes, or wells need attention baed on your criteria.

Project Goal

The goal of this project is to introduce a before and after picture of how a boot application that is a blob of code can be updated into a modularized application that can be easily maintained, enhanced and understood. The foundation of the modularized application will be built using the principles and tooling provided by the Spring Modulith Project.

POC App

A basic boot app that retrieves stream data from specific streams to determine if they may need your attention.

Modulith Based App

A refactored boot app based on the POC that has been enhanced so that it is easily modified and maintained using the principles of Spring Modulith. Currently this application is a work in progress with many changes to come. It only returns good for any sensor id that is passed into it. The code currently shows the following:

  • The test prove that the module design is consistent with good patterns

  • For every request we will use the event messaging framework to record request to a database.

  • Docs for the design of the modules is created.

We need to add the functionality for the modulith based app, based on what is in the POC. And restructure it accordingly.