UNPKG

@eggjs/dal-plugin

Version:
28 lines 2.5 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; import { Advice } from '@eggjs/aop-decorator'; import { AccessLevel, ObjectInitType } from '@eggjs/core-decorator'; import { PropagationType } from '@eggjs/tegg-types'; import { MysqlDataSource } from '@eggjs/dal-runtime'; let TransactionalAOP = class TransactionalAOP { async around(ctx, next) { const { propagation, dataSourceGetter } = ctx.adviceParams; const dataSource = dataSourceGetter(); if (propagation === PropagationType.ALWAYS_NEW) { return await dataSource.beginTransactionScope(next); } return await dataSource.beginTransactionScope(next); } }; TransactionalAOP = __decorate([ Advice({ accessLevel: AccessLevel.PUBLIC, initType: ObjectInitType.SINGLETON, }) ], TransactionalAOP); export { TransactionalAOP }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25hbEFPUC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvVHJhbnNhY3Rpb25hbEFPUC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFvQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQTBCLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFXOUMsSUFBTSxnQkFBZ0IsR0FBdEIsTUFBTSxnQkFBZ0I7SUFDcEIsS0FBSyxDQUFDLE1BQU0sQ0FDakIsR0FBMEQsRUFDMUQsSUFBd0I7UUFFeEIsTUFBTSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLEdBQUcsQ0FBQyxZQUFhLENBQUM7UUFDNUQsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUN0QyxJQUFJLFdBQVcsS0FBSyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0MsT0FBTyxNQUFNLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBQ0QsT0FBTyxNQUFNLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0YsQ0FBQTtBQVpZLGdCQUFnQjtJQUo1QixNQUFNLENBQUM7UUFDTixXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU07UUFDL0IsUUFBUSxFQUFFLGNBQWMsQ0FBQyxTQUFTO0tBQ25DLENBQUM7R0FDVyxnQkFBZ0IsQ0FZNUIifQ==