UNPKG

open-lineage-client

Version:

TypeScript/JavaScript client for creating and sending OpenLineage standard events.

31 lines 1.16 kB
import { ConsoleTransport } from './transports/ConsoleTransport.js'; import { getTransportFromFile } from './transports/Factory.js'; /** * OpenLineageClient is responsible for emitting events to a specified transport. */ export class OpenLineageClient { /** * Constructs an OpenLineageClient instance. * @param transport - A custom transport implementation (optional). */ constructor(transport = null) { this.transport = transport || getTransportFromFile(); if (!this.transport) { this.transport = new ConsoleTransport(); console.log('No transport provided, defaulting to console transport'); } } /** * Emits an event using the configured transport. * @param event - The event to emit. * @returns A promise that resolves when the event is successfully emitted. */ async emit(event) { if (!this.transport) { this.transport = new ConsoleTransport(); console.log('No transport provided, defaulting to console transport'); } return this.transport.emit(event); } } //# sourceMappingURL=OpenLineageClient.js.map