@freemework/common
Version:
Common library of the Freemework Project.
47 lines • 2.26 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FSqlConnectionFactoryExecutionElement = exports.FSqlConnectionFactoryExecutionContext = void 0;
const index_js_1 = require("../execution_context/index.js");
const f_initable_js_1 = require("../lifecycle/f_initable.js");
class FSqlConnectionFactoryExecutionContext extends index_js_1.FExecutionContextBase {
_sqlConnectionFactory;
static async create(prevContext, sqlConnectionFactory) {
if (f_initable_js_1.FInitable.instanceOf(sqlConnectionFactory)) {
await sqlConnectionFactory.init(prevContext);
}
return new FSqlConnectionFactoryExecutionContext(prevContext, sqlConnectionFactory);
}
static of(executionContext) {
const sqlFactoryExecutionContext = index_js_1.FExecutionContext.getExecutionContext(executionContext, FSqlConnectionFactoryExecutionContext);
return new FSqlConnectionFactoryExecutionElement(sqlFactoryExecutionContext, sqlFactoryExecutionContext._sqlConnectionFactory);
}
get sqlConnectionFactory() {
return this._sqlConnectionFactory;
}
constructor(prevContext, sqlConnectionFactory) {
super(prevContext);
this._sqlConnectionFactory = sqlConnectionFactory;
}
}
exports.FSqlConnectionFactoryExecutionContext = FSqlConnectionFactoryExecutionContext;
class FSqlConnectionFactoryExecutionElement extends index_js_1.FExecutionElement {
_sqlConnectionFactory;
constructor(owner, sqlConnectionFactory) {
super(owner);
this._sqlConnectionFactory = sqlConnectionFactory;
}
create(executionContext) {
return this._sqlConnectionFactory.create(executionContext);
}
usingConnection(executionContext, worker) {
return this._sqlConnectionFactory.usingConnection(executionContext, worker);
}
usingConnectionWithTransaction(executionContext, worker) {
return this._sqlConnectionFactory.usingConnectionWithTransaction(executionContext, worker);
}
get sqlConnectionFactory() {
return this._sqlConnectionFactory;
}
}
exports.FSqlConnectionFactoryExecutionElement = FSqlConnectionFactoryExecutionElement;
//# sourceMappingURL=f_sql_connection_factory_execution_context.js.map