Member Junction
    Preparing search index...

    Class SaveEntityGraphOperation

    Saves a parent record and its companion-contributed children atomically, server-side.

    Invoked automatically by BaseEntity.Save() when the entity has companion work to do and the active provider cannot open a local transaction. Application code does not normally call this directly — the point of the design is that order.Save() is the whole API on both tiers.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    ExecutionMode: RemoteOpExecMode = 'Sync'

    Whether this operation is a plain Sync request/response or a LongRunning run.

    OperationKey: "MJ.SaveEntityGraph" = SAVE_ENTITY_GRAPH_OPERATION_KEY

    Stable registry key and wire token for this operation (e.g. RecordProcess.RunNow).

    RequiredScope: "entity:update" = 'entity:update'

    API-key scope required to invoke this operation.

    entity:update is the ceiling applied at the resolver; per-record Create vs Update permissions are enforced inside each node's own Save().

    RequiresSystemUser?: boolean

    When true, the server only permits the system user to invoke this operation.

    Methods

    • Validates the shape of the incoming payload.

      Deliberately not where entity permissions are checked. Two other layers already own that, and duplicating it here would need a provider this hook is not given:

      • The server resolver applies the API-key scope ceiling (RequiredScope) before dispatch, closing the batch-mutation bypass that TransactionGroupResolver was patched for.
      • Every node's own BaseEntity.Save() calls CheckPermissions() for Create or Update as appropriate, per record, against the acting user — including children the caller never named explicitly.

      Parameters

      Returns Promise<boolean>

      True when the payload is well-formed enough to attempt.