DenyExternalMutationTrait
Store is read-only for external HTTP clients in v1 — every mutation goes through the internal bridge only (Admin → ApiBridge → internalAction*, which bypasses action* methods entirely), stock effects exclusively through the DocumentService actions.
Each Store presenter overrides the mutating CrudTrait actions (actionSave / actionUpdateColumns /
actionDelete / actionDeleteAll) in its class body with one-liners calling this helper — a class
method beats the trait method, no insteadof gymnastics needed. The deny belongs to the
presenter: DeleteTrait carries no meta, so a manager beforeDelete hook never sees __external
and cannot make this distinction.
Table of Contents
Methods
- denyStoreExternalMutation() : void
Methods
denyStoreExternalMutation()
private
denyStoreExternalMutation() : void