- This service calculates entsoe data.
- It gives information about the calculation state.
- It is interuptable after every pipeline step.
- Prevent recalculation by caching.
- Prevents frocen screen
- Debug executors
npm i entsoe-state-maschine
stateMaschine = new PowerPipe();
stateMaschine.state$.next(state);
stateMaschine.modifiedChart?.subscribe(chartGroup => {
console.log(chartGroup)
})
stateMaschine = new PowerPipe();
stateMaschine.pipelineState?.subscribe(pipeState => {
console.log(pipeState)
}
stateMaschine.state$.next(state);
stateMaschine = new PowerPipe();
showCachedData(step:number) {
stateMaschine.setCacheStep(number)
}
export class PowerPipe extends StateMaschine {
entsoeService = new EntsoeService();
entsoeLoader = new EntsoeLoader(this.entsoeService);
multiply = new MultiplyTransformer();
units = new UnitsTransformer(this.entsoeService)
constructor() {
super()
}
pipeline: Transformer[] = [
this.entsoeLoader,
this.units,
this.multiply,
];
}
export class MyTransformer implements Transformer {
register(){
return {
filter: '$.display',
name: 'units',
shortName: 'ut'
}
}
async modify(chart, state) {
return chart;
}
}