open-lineage-client
Version:
TypeScript/JavaScript client for creating and sending OpenLineage standard events.
30 lines • 718 B
JavaScript
import { Job } from '../entities/Job.js';
/**
* Builder for creating Job instances.
*/
export class JobBuilder {
constructor() {
this.namespace = null;
this.name = null;
this.facets = {};
}
setNamespace(namespace) {
this.namespace = namespace;
return this;
}
setName(name) {
this.name = name;
return this;
}
addFacets(facets) {
this.facets = facets;
return this;
}
build() {
if (!this.namespace || !this.name) {
throw new Error('Namespace and Job Name are required');
}
return new Job(this.namespace, this.name, this.facets);
}
}
//# sourceMappingURL=JobBuilder.js.map