You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
186 lines
5.9 KiB
JavaScript
186 lines
5.9 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.ConnectionPoolClearedEvent = exports.ConnectionCheckedInEvent = exports.ConnectionCheckedOutEvent = exports.ConnectionCheckOutFailedEvent = exports.ConnectionCheckOutStartedEvent = exports.ConnectionClosedEvent = exports.ConnectionReadyEvent = exports.ConnectionCreatedEvent = exports.ConnectionPoolClosedEvent = exports.ConnectionPoolReadyEvent = exports.ConnectionPoolCreatedEvent = exports.ConnectionPoolMonitoringEvent = void 0;
|
|
const constants_1 = require("../constants");
|
|
/**
|
|
* The base export class for all monitoring events published from the connection pool
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool) {
|
|
this.time = new Date();
|
|
this.address = pool.address;
|
|
}
|
|
}
|
|
exports.ConnectionPoolMonitoringEvent = ConnectionPoolMonitoringEvent;
|
|
/**
|
|
* An event published when a connection pool is created
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionPoolCreatedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_POOL_CREATED;
|
|
const { maxConnecting, maxPoolSize, minPoolSize, maxIdleTimeMS, waitQueueTimeoutMS } = pool.options;
|
|
this.options = { maxConnecting, maxPoolSize, minPoolSize, maxIdleTimeMS, waitQueueTimeoutMS };
|
|
}
|
|
}
|
|
exports.ConnectionPoolCreatedEvent = ConnectionPoolCreatedEvent;
|
|
/**
|
|
* An event published when a connection pool is ready
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionPoolReadyEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_POOL_READY;
|
|
}
|
|
}
|
|
exports.ConnectionPoolReadyEvent = ConnectionPoolReadyEvent;
|
|
/**
|
|
* An event published when a connection pool is closed
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionPoolClosedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_POOL_CLOSED;
|
|
}
|
|
}
|
|
exports.ConnectionPoolClosedEvent = ConnectionPoolClosedEvent;
|
|
/**
|
|
* An event published when a connection pool creates a new connection
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionCreatedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, connection) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_CREATED;
|
|
this.connectionId = connection.id;
|
|
}
|
|
}
|
|
exports.ConnectionCreatedEvent = ConnectionCreatedEvent;
|
|
/**
|
|
* An event published when a connection is ready for use
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionReadyEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, connection) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_READY;
|
|
this.connectionId = connection.id;
|
|
}
|
|
}
|
|
exports.ConnectionReadyEvent = ConnectionReadyEvent;
|
|
/**
|
|
* An event published when a connection is closed
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionClosedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, connection, reason, error) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_CLOSED;
|
|
this.connectionId = connection.id;
|
|
this.reason = reason;
|
|
this.serviceId = connection.serviceId;
|
|
this.error = error ?? null;
|
|
}
|
|
}
|
|
exports.ConnectionClosedEvent = ConnectionClosedEvent;
|
|
/**
|
|
* An event published when a request to check a connection out begins
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionCheckOutStartedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_CHECK_OUT_STARTED;
|
|
}
|
|
}
|
|
exports.ConnectionCheckOutStartedEvent = ConnectionCheckOutStartedEvent;
|
|
/**
|
|
* An event published when a request to check a connection out fails
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionCheckOutFailedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, reason, error) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_CHECK_OUT_FAILED;
|
|
this.reason = reason;
|
|
this.error = error;
|
|
}
|
|
}
|
|
exports.ConnectionCheckOutFailedEvent = ConnectionCheckOutFailedEvent;
|
|
/**
|
|
* An event published when a connection is checked out of the connection pool
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionCheckedOutEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, connection) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_CHECKED_OUT;
|
|
this.connectionId = connection.id;
|
|
}
|
|
}
|
|
exports.ConnectionCheckedOutEvent = ConnectionCheckedOutEvent;
|
|
/**
|
|
* An event published when a connection is checked into the connection pool
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionCheckedInEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, connection) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_CHECKED_IN;
|
|
this.connectionId = connection.id;
|
|
}
|
|
}
|
|
exports.ConnectionCheckedInEvent = ConnectionCheckedInEvent;
|
|
/**
|
|
* An event published when a connection pool is cleared
|
|
* @public
|
|
* @category Event
|
|
*/
|
|
class ConnectionPoolClearedEvent extends ConnectionPoolMonitoringEvent {
|
|
/** @internal */
|
|
constructor(pool, options = {}) {
|
|
super(pool);
|
|
/** @internal */
|
|
this.name = constants_1.CONNECTION_POOL_CLEARED;
|
|
this.serviceId = options.serviceId;
|
|
this.interruptInUseConnections = options.interruptInUseConnections;
|
|
}
|
|
}
|
|
exports.ConnectionPoolClearedEvent = ConnectionPoolClearedEvent;
|
|
//# sourceMappingURL=connection_pool_events.js.map
|