Skip to main content
Skip to main content

AbstractCartCompletionStrategy

constructor

Parameters

__container__anyRequired
__configModule__Record<string, unknown>
__moduleDeclaration__Record<string, unknown>

Properties

__configModule__Record<string, unknown>
__container__anyRequired
__moduleDeclaration__Record<string, unknown>
manager_EntityManagerRequired
transactionManager_undefined | EntityManagerRequired

Accessors

activeManager_

Returns

EntityManagerEntityManagerRequired

Methods

atomicPhase_

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

Type Parameters

TResultobjectRequired
TErrorobjectRequired

Parameters

work(transactionManager: EntityManager) => Promise<TResult>Required
the transactional work to be done
isolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>
the isolation level to be used for the work.
maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>
Potential error handler

Returns

PromisePromise<TResult>Required
the result of the transactional work

complete

Takes a cart id and completes the cart. This for example takes place when creating an order or confirming a swap.

Parameters

cartIdstringRequired
the id of the Cart to complete.
idempotencyKeyIdempotencyKeyRequired
Idempotency Key is used to continue a process in case of any failure that might occur.
contextRequestContextRequired
the request context for the completion request

Returns

PromisePromise<CartCompletionResponse>Required
the response for the completion request

shouldRetryTransaction_

Parameters

errRecord<string, unknown> | objectRequired

Returns

booleanboolean

withTransaction

Parameters

transactionManagerEntityManager

Returns

constructor(__container__: any, __configModule__?: Record<string, unknown>, __moduleDeclaration__?: Record<string, unknown>) => AbstractCartCompletionStrategyRequired
__configModule__Record<string, unknown>
__container__anyRequired
__moduleDeclaration__Record<string, unknown>
manager_EntityManagerRequired
transactionManager_undefined | EntityManagerRequired
activeManager_objectRequired
atomicPhase_<TResult, TError>(work: (transactionManager: EntityManager) => Promise<TResult>, isolationOrErrorHandler?: IsolationLevel | (error: TError) => Promise<void | TResult>, maybeErrorHandlerOrDontFail?: (error: TError) => Promise<void | TResult>) => Promise<TResult>Required
complete(cartId: string, idempotencyKey: IdempotencyKey, context: RequestContext) => Promise<CartCompletionResponse>Required
shouldRetryTransaction_(err: Record<string, unknown> | { code: string }) => booleanRequired
withTransaction(transactionManager?: EntityManager) => AbstractCartCompletionStrategyRequired
Was this section helpful?