Skip to content

The Application Dictionary Reactive System allows you to build an application based on an active data dictionary.

License

Notifications You must be signed in to change notification settings

EmerisScala/ADReactiveSystem

 
 

Repository files navigation

alt tag

Application Dictionary Reactive System

About

Join the chat at https://gitter.im/adempiere/ADReactiveSystem

The Application Dictionary Reactive System allows you to build an application based on an active data dictionary.

The architecture of this application is based on Domain Driven Design which will allow an efficient development, extension and maintenance for the future.

The layers for a software build based on DDD are:

  • User Interface
  • Application Layer
  • Domain Layer
  • Infrastructure Layer

alt tag

The DDD Map Image:

alt tag

The components that integrate this application are built under the philosophy of reactive systems which must fulfill four premises that form the pillars of a reactive system.

  • Responsive
  • Resilient
  • Elastic
  • Message Driven

The Application Dictionary Reactive System is the foundation for building a high-availability, scalable, and ready-to-run application in the cloud.

Element service

This service exposes application dictionary elements using a Restful API

Queries handled

  • /api/v1_0_0/element/:id - Get an Element by an ID.
  • /api/v1_0_0/element/:uuid - Get an Element by an UUID
  • /api/v1_0_0/element?pageNo&pageSize Gets a list of Element with paginating.

Entity service

This service exposes application dictionary entities using a Restful APi

Queries handled

  • /api/v1_0_0/entity/:id - Get an Dictionary Entity by an ID.
  • /api/v1_0_0/entity/:uuid - Get an Dictionary Entity by an UUID
  • /api/v1_0_0/entity/all - Get an Dictionary Entities
  • /api/v1_0_0/entity?pageNo&pageSize Gets a list of Dictionary Entities with paginating.

Step to Install

git clone  https://github.com/adempiere/ADReactiveSystem.git

Installing SBT based on this steps http://www.scala-sbt.org/0.13/docs/Setup.html

Setup

Edit the ./dictionary-impl/src/main/resources/application.confapplication.conf file and set Database parameters:

db.default {
    driver = "org.postgresql.Driver"
    url = "jdbc:postgresql://localhost:5432/adempiere"
    username = "adempiere"
    password = "adempiere"
 }

ctx.dataSource.user=adempiere
ctx.dataSource.password=adempiere
ctx.dataSource.databaseName=adempiere
ctx.dataSource.portNumber=5432
ctx.dataSource.serverName=localhost

Execute

#sbt compile
#sbt runAll

open your web browser and call this url

http://localhost:52182/api/v1_0_0/entity/all

Project Status

Under development

About

The Application Dictionary Reactive System allows you to build an application based on an active data dictionary.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Scala 100.0%