1234567891011121314151617181920212223242526272829 |
- import { AsyncAction } from './AsyncAction';
- export class QueueAction extends AsyncAction {
- constructor(scheduler, work) {
- super(scheduler, work);
- this.scheduler = scheduler;
- this.work = work;
- }
- schedule(state, delay = 0) {
- if (delay > 0) {
- return super.schedule(state, delay);
- }
- this.delay = delay;
- this.state = state;
- this.scheduler.flush(this);
- return this;
- }
- execute(state, delay) {
- return (delay > 0 || this.closed) ?
- super.execute(state, delay) :
- this._execute(state, delay);
- }
- requestAsyncId(scheduler, id, delay = 0) {
- if ((delay !== null && delay > 0) || (delay === null && this.delay > 0)) {
- return super.requestAsyncId(scheduler, id, delay);
- }
- return scheduler.flush(this);
- }
- }
- //# sourceMappingURL=QueueAction.js.map
|