Skip to content

Agent architecture #176

@halcwb

Description

@halcwb

Is your feature request related to a problem? Please describe.
Currently the core domain libraries offer an Api.fs to make use of their services.

Describe the solution you'd like
Use a Mailboxprocessor approach where the Api is offered as a Command DU type. This can mirror the Client Server approach that is used by the communication between Informedica.GenPRES.Server and Informedica.GenPRES.Client.

This approach also works great for:

  • Async communication
  • Extending the Command DU with additional cases when needed
  • Offering a clear audit trail as each Command call fits nicely with an Event sourcing

So, there needs to be a Command -> Response pattern throughout the solution with a consistent architecture.

Note that this would only apply to libraries that offer a domain specific service, so, the following libraries should be excluded from this approach:

Informedica.Agents.Lib
Informedica.Logging.Lib
Informedica.Utils.Lib
Informedica.GenCORE.Lib
Informedica.GenPRES.Shared and Server and Client
Informedica.GenSOLVER.Lib
Informedica.GenUNITS.Lib

Start with

  • Informedica.ZForm.Lib/Informedica.ZIndex.Lib
  • Informedica.GenFORM.Lib and
  • Informedica.GenORDER.Lib

First create an architectural design. Look for appropriate libraries to facilitate this Agen like architecture.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions