Executes this business operation according to domain rules implemented in the use case.
- Internal invocation through dependency injection (Inversify).
| Name | Required | Type | Description |
|---|---|---|---|
dto |
Yes | object |
Use case input DTO (see implementation file). |
- Input DTO must respect constraints enforced by the implementation.
- Caller context/authorization must satisfy business checks implemented in the use case.
- Validates input/access constraints defined in
executeand helper guards. - Uses
bddServicedependency to read/write required domain data. - Grants immediate access when requester is
ADMINor when program visibility isPUBLIC. - For private programs, enforces:
- assigned athlete can read own assignment,
- creator coach can read unassigned templates,
- creator coach can read assigned programs only with an active coach-athlete link.
- Uses
resolveCoachAthleteVisibilityUsecaseto evaluate active link validity at request time. - Uses
loggerServicedependency to read/write required domain data.
- Returns the use case result (entity/model/list or boolean depending on implementation).
- Logs execution errors through the logger service before normalization/rethrow.
- Throws
ERRORS.GET_PROGRAM_FORBIDDENwhen the corresponding guard/validation fails. - Normalizes or references error code
ERRORS.GET_PROGRAM_FORBIDDEN. - Normalizes or references error code
ERRORS.GET_PROGRAM_USECASE.
bddServiceloggerServiceresolveCoachAthleteVisibilityUsecase
api/src/usecases/sport/program/get.program.usecase.tsapi/src/usecases/sport/program/__tests__/get.program.usecase.spec.ts
{
"dto": "see implementation DTO"
}- This document is generated from code and should be updated whenever behavior changes in implementation.
- If helper modules define additional rules, they are authoritative over this summary.
api/src/usecases/sport/program/__tests__/get.program.usecase.spec.ts