Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
cressie176 authored Jan 8, 2024
1 parent bdeb3c8 commit d300db2
Showing 1 changed file with 30 additions and 30 deletions.
60 changes: 30 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,36 +40,36 @@ Most applications require slow moving reference data, which presents the followi
Solving such a complex problem becomes simpler when broken down. This project provides a server side framework for managing temporal reference data. In the following diagram, the mechanism for defining, loading, accessing and receiving notifications about reference data are provided by this framework. The RESTful API and Webhook must be manually created by the application developer. An [example application](#example-application) is provided to demonstrate how.

<pre>
Change
Notification Webhook
┌─────────── ┌──────────────────────────────────────────────────────────────────────────────┐
┌────────┐ ┌─────────────────┬──────────┐ GET /api/changelog?projection=$p&version=$v ┌────────────────────────┐
│ │ │ │ ├──────────────────────────────────────────────────────────────│
│ │ │ │ │
│ DB │◀────▶│ Filby │ App │ Client
│ │ │ │ │ GET /api/projection/:version/:projection?changeSetId=$c
│ │ │ │ ├──────────────────────────────────────────────────────────────│
└────────┘ └─────────────────┴──────────┘ └────────────────────────┘
┌─────────────────────────────────────────────┐
│ │
│ Reference Data │
│ Change Sets │
│ │
└─────────────────────────────────────────────┘
▲ ▲ ▲ ▲
│ │ │ │
│ │ │ │
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
│ │ │ │ │ │ │ │
│ CSV │ │ YAML │ │ JSON │ │ SQL │
│ │ │ │ │ │ │ │
└─────────┘ └─────────┘ └─────────┘ └─────────┘
</pre>
Change
Notification Webhook
┌─────────┐ ──────────────────────────────────────────────────────────────────┐
│ │
│ ▼
┌────────┐ ┌───────────┬──────────┐ GET /api/changelog?projection=$p&version=$v ──────────┐
│ │ │ │ ├──────────────────────────────────────────────────────────
│ │ │ │ │
│ DB │◀────▶│ Filby │ App │ │ Client │
│ │ │ │ │ GET /api/projection/:version/:projection?changeSetId=$c
│ │ │ │ ├──────────────────────────────────────────────────────────
└────────┘ └───────────┴──────────┘ ──────────┘
┌─────────────────────────────────────────────┐
│ │
│ Reference Data │
│ Change Sets │
│ │
└─────────────────────────────────────────────┘
▲ ▲ ▲ ▲
│ │ │ │
│ │ │ │
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
│ │ │ │ │ │ │ │
│ CSV │ │ YAML │ │ JSON │ │ SQL │
│ │ │ │ │ │ │ │
└─────────┘ └─────────┘ └─────────┘ └─────────┘
</pre>

The first of the two API calls, namely `/api/changelog` discloses the changes undergone by a projection (a view of the reference data), and provides a set of ids for requesting the projection at a point in time.

Expand Down

0 comments on commit d300db2

Please sign in to comment.