Skip to content

phillipbarron/asset-store-aggregate

Repository files navigation

Asset Store Aggregate

An attempt to build an aggregate from the events in the Optimo Event store which will serve an API much like the READ (ie GET) Optimo Asset Store (eventually)

To run application:

./run-local.sh

Todo:

  • Create case class for both working and published branches
  • Consume messages from a Kafka Topic
  • Add a Mongo DAO with CRUD API
  • Add a Mongo Docker container for testing / local dev
  • Integrate Docker/Mongo with startup script
  • Add GET /assets/{id} endpoint - this should return the working branch
  • Add GET /assets/{id}/branch/{branch} endpoint
  • Add mechanism to trash DB a re-consume queue from scratch
  • Add index to db db.assets.createIndex( { "assetId": 1 }, { unique: true } ) - do this programmatically
  • Fix all the tests I broke
  • Stop using default port in Docker containers to avoid conflict with services running on host
  • Review DAO / Service / API logic distribution / Consume pattern - this made sense for the History API but might not be appropriate for this project
  • update the branch string appropriately
  • Make the published branch an Option
  • This is painfully slow - identify where bottlenecks are in event consumption

Allow-listing

This service is allowlisted and is hosted in https://github.com/bbc/cam-whitelisting. The allowlist is disabled on int, Jenkins and locally.

About

Well, you know....

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published