@curium.rocks/data-emitter-base
Advanced tools
Comparing version 0.1.1-alpha.28 to 0.1.1-alpha.29
@@ -130,3 +130,28 @@ import { IChronicler, IJsonSerializable } from "./chronicler"; | ||
/** | ||
* For when a class needs to clean up resources asynchronously | ||
*/ | ||
export interface IDisposableAsync { | ||
disposeAsync(): Promise<void>; | ||
} | ||
/** | ||
* | ||
* @param {unknown} obj | ||
* @param {string} methodName | ||
* @return {boolean} | ||
*/ | ||
export declare function hasMethod(obj: unknown, methodName: string): boolean; | ||
/** | ||
* Check if a object implements IDisposableAsync interface | ||
* @param {unknown} obj | ||
* @return {boolean} | ||
*/ | ||
export declare function isDisposableAsync(obj: unknown): boolean; | ||
/** | ||
* Checks if an object implements the IDisposable interface | ||
* @param {unknown} obj | ||
* @return {boolean} | ||
*/ | ||
export declare function isDisposable(obj: unknown): boolean; | ||
/** | ||
* | ||
* @param {Record<string, unknown>} obj | ||
@@ -133,0 +158,0 @@ * @return {boolean} |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.isJsonSerializable = void 0; | ||
exports.isJsonSerializable = exports.isDisposable = exports.isDisposableAsync = exports.hasMethod = void 0; | ||
/** | ||
* | ||
* @param {unknown} obj | ||
* @param {string} methodName | ||
* @return {boolean} | ||
*/ | ||
function hasMethod(obj, methodName) { | ||
if (obj == null) | ||
return false; | ||
if (typeof obj == 'object') { | ||
var val = obj; | ||
return typeof val[methodName] == 'function'; | ||
} | ||
return false; | ||
} | ||
exports.hasMethod = hasMethod; | ||
/** | ||
* Check if a object implements IDisposableAsync interface | ||
* @param {unknown} obj | ||
* @return {boolean} | ||
*/ | ||
function isDisposableAsync(obj) { | ||
return hasMethod(obj, 'disposableAsync'); | ||
} | ||
exports.isDisposableAsync = isDisposableAsync; | ||
/** | ||
* Checks if an object implements the IDisposable interface | ||
* @param {unknown} obj | ||
* @return {boolean} | ||
*/ | ||
function isDisposable(obj) { | ||
return hasMethod(obj, 'disposable'); | ||
} | ||
exports.isDisposable = isDisposable; | ||
/** | ||
* | ||
* @param {Record<string, unknown>} obj | ||
@@ -7,0 +41,0 @@ * @return {boolean} |
@@ -1,2 +0,2 @@ | ||
export { IDataEmitter, ICompoundDataEmitter, ICommand, IDataEvent, IExecutionResult, ISettings, ITraceableAction, IEmitterFactory, IEmitterProvider, IChroniclerFactory, IChroniclerProvider, IEmitterDescription, IChroniclerDescription, IFormatSettings, isJsonSerializable } from './dataEmitter'; | ||
export { IDataEmitter, ICompoundDataEmitter, ICommand, IDataEvent, IExecutionResult, ISettings, ITraceableAction, IEmitterFactory, IDisposableAsync, IEmitterProvider, IChroniclerFactory, IChroniclerProvider, IEmitterDescription, IChroniclerDescription, IFormatSettings, isJsonSerializable, isDisposable, isDisposableAsync, hasMethod } from './dataEmitter'; | ||
export { BaseEmitter, BaseStatusEvent, BaseDataEvent } from './baseEmitter'; | ||
@@ -6,4 +6,4 @@ export { PollingEmitter, DeltaPollingEmitter } from './pollingEmitter'; | ||
export { IChronicler, IFileChronicler, IRotatingFileChronicler, IJsonSerializable } from './chronicler'; | ||
export { IService, IChroniclerMaestro, IEmitterMaestro, IMaestro } from './maestro'; | ||
export { IService, IChroniclerMaestro, IEmitterMaestro, IMaestro, isService } from './maestro'; | ||
export { ProviderSingleton } from './provider'; | ||
export { BaseFactory, BaseEmitterFactory, BaseChroniclerFactory } from './factory'; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.BaseChroniclerFactory = exports.BaseEmitterFactory = exports.BaseFactory = exports.ProviderSingleton = exports.LogLevel = exports.DeltaPollingEmitter = exports.PollingEmitter = exports.BaseDataEvent = exports.BaseStatusEvent = exports.BaseEmitter = exports.isJsonSerializable = void 0; | ||
exports.BaseChroniclerFactory = exports.BaseEmitterFactory = exports.BaseFactory = exports.ProviderSingleton = exports.isService = exports.LogLevel = exports.DeltaPollingEmitter = exports.PollingEmitter = exports.BaseDataEvent = exports.BaseStatusEvent = exports.BaseEmitter = exports.hasMethod = exports.isDisposableAsync = exports.isDisposable = exports.isJsonSerializable = void 0; | ||
var dataEmitter_1 = require("./dataEmitter"); | ||
Object.defineProperty(exports, "isJsonSerializable", { enumerable: true, get: function () { return dataEmitter_1.isJsonSerializable; } }); | ||
Object.defineProperty(exports, "isDisposable", { enumerable: true, get: function () { return dataEmitter_1.isDisposable; } }); | ||
Object.defineProperty(exports, "isDisposableAsync", { enumerable: true, get: function () { return dataEmitter_1.isDisposableAsync; } }); | ||
Object.defineProperty(exports, "hasMethod", { enumerable: true, get: function () { return dataEmitter_1.hasMethod; } }); | ||
var baseEmitter_1 = require("./baseEmitter"); | ||
@@ -15,2 +18,4 @@ Object.defineProperty(exports, "BaseEmitter", { enumerable: true, get: function () { return baseEmitter_1.BaseEmitter; } }); | ||
Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return loggerFacade_1.LogLevel; } }); | ||
var maestro_1 = require("./maestro"); | ||
Object.defineProperty(exports, "isService", { enumerable: true, get: function () { return maestro_1.isService; } }); | ||
var provider_1 = require("./provider"); | ||
@@ -17,0 +22,0 @@ Object.defineProperty(exports, "ProviderSingleton", { enumerable: true, get: function () { return provider_1.ProviderSingleton; } }); |
{ | ||
"name": "@curium.rocks/data-emitter-base", | ||
"version": "0.1.1-alpha.28", | ||
"version": "0.1.1-alpha.29", | ||
"description": "A collection of typescript class interfaces and base classes that specify generic contracts with things that emit data", | ||
@@ -5,0 +5,0 @@ "main": "build/src/lib.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
100457
2070