Chronicle.Artifacts (cratis_chronicle v0.0.6)

Copy Markdown View Source

Discovers Chronicle artifacts in an OTP application.

Discovery is based on the introspection functions generated by Chronicle macros:

  • __chronicle_event_type__/1
  • __chronicle_reactor__/1
  • __chronicle_reducer__/1
  • __chronicle_read_model__/1

The returned map can be fed directly into Chronicle.Client options.

Summary

Functions

Discovers Chronicle artifacts from modules belonging to an OTP app.

Discovers Chronicle artifacts from all currently loaded modules.

Types

discovered()

@type discovered() :: %{
  event_types: [module()],
  reactors: [module()],
  reducers: [module()],
  read_models: [module()]
}

Functions

discover(otp_app)

@spec discover(atom()) :: discovered()

Discovers Chronicle artifacts from modules belonging to an OTP app.

Returns empty lists if the app has no module list available.

discover_loaded()

@spec discover_loaded() :: discovered()

Discovers Chronicle artifacts from all currently loaded modules.

Useful as a zero-configuration default in early adoption scenarios.