Liking cljdoc? Tell your friends :D

wagoe.user.ports

User module ports — persistence and service seams for the user domain.

Three repositories (users, sessions, audit log) and one service facade. The repositories are what an alternative backend implements; the service is what the rest of the framework calls.

Email, notifications, events and metrics are not here — email lives in libs/email, observability owns logging/metrics/audit.

User module ports — persistence and service seams for the user domain.

Three repositories (users, sessions, audit log) and one service facade.
The repositories are what an alternative backend implements; the service is
what the rest of the framework calls.

Email, notifications, events and metrics are not here — email lives in
libs/email, observability owns logging/metrics/audit.
raw docstring

IUserAuditRepositorycljprotocol

Audit-log persistence. Entries are immutable once written.

Audit-log persistence. Entries are immutable once written.

create-audit-logclj

(create-audit-log this audit-entity)

find-audit-logsclj

(find-audit-logs this options)

find-audit-logs-by-userclj

(find-audit-logs-by-user this user-id options)
sourceraw docstring

IUserRepositorycljprotocol

User persistence. Entities are kebab-case maps per wagoe.user.schema.

User persistence. Entities are kebab-case maps per wagoe.user.schema.

create-userclj

(create-user this user-entity)

find-user-by-emailclj

(find-user-by-email this email)

find-user-by-idclj

(find-user-by-id this user-id)

find-usersclj

(find-users this options)

hard-delete-userclj

(hard-delete-user this user-id)

soft-delete-userclj

(soft-delete-user this user-id)

update-userclj

(update-user this user-entity)
sourceraw docstring

IUserServicecljprotocol

User domain service — orchestrates the repositories, the auth shell, the cache and the audit trail. Every method may throw an ex-info carrying :type (ADR-022); the listed types are the ones callers branch on.

User domain service — orchestrates the repositories, the auth shell, the
cache and the audit trail. Every method may throw an ex-info carrying
:type (ADR-022); the listed types are the ones callers branch on.

logout-userclj

(logout-user this session-token)

list-audit-logsclj

(list-audit-logs this options)

change-passwordclj

(change-password this user-id current-password new-password)

get-user-by-idclj

(get-user-by-id this user-id)

update-user-profileclj

(update-user-profile this user-entity)

register-userclj

(register-user this user-data)

validate-sessionclj

(validate-session this session-token)

register-or-authenticate-userclj

(register-or-authenticate-user this user-data login-context)

claim-user-identityclj

(claim-user-identity this request)

get-audit-logs-for-userclj

(get-audit-logs-for-user this user-id options)

logout-user-everywhereclj

(logout-user-everywhere this user-id)

permanently-delete-userclj

(permanently-delete-user this user-id)

list-usersclj

(list-users this options)

deactivate-userclj

(deactivate-user this user-id)

authenticate-userclj

(authenticate-user this user-credentials)

get-user-sessionsclj

(get-user-sessions this user-id)

get-user-by-emailclj

(get-user-by-email this email)
sourceraw docstring

IUserSessionRepositorycljprotocol

Session persistence. A session is active when it has not expired and has no :revoked-at; every read here filters on both.

Session persistence. A session is active when it has not expired and has no
:revoked-at; every read here filters on both.

create-sessionclj

(create-session this session-entity)

delete-sessions-expired-beforeclj

(delete-sessions-expired-before this cutoff)

find-all-sessionsclj

(find-all-sessions this)

find-session-by-tokenclj

(find-session-by-token this session-token)

find-sessions-by-userclj

(find-sessions-by-user this user-id)

invalidate-all-user-sessionsclj

(invalidate-all-user-sessions this user-id)

invalidate-sessionclj

(invalidate-session this session-token)

update-sessionclj

(update-session this session-entity)
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close