projects/wms-framework/src/lib/regionsframework/events/SubscriptionToken.ts
Subscription object
Properties |
Methods |
|
constructor(handler: (payload: unknown) => void, parent: unknown, executeInSeparateEvent: boolean, filter?: (a?: any) => void)
|
Public handler |
Type : function
|
Public parent |
Type : unknown
|
Public execute | ||||||
execute(payload: any)
|
||||||
Parameters :
Returns :
void
|
Private invokeHandler | ||||||
invokeHandler(payload: any)
|
||||||
Parameters :
Returns :
void
|
export class SubscriptionToken {
constructor(
public handler: (payload: unknown) => void,
public parent: unknown,
private executeInSeparateEvent: boolean,
private filter?: (a: any) => boolean
) {}
public execute(payload: any): void {
if (typeof this.filter === 'undefined' || this.filter(payload) === true) {
if (this.executeInSeparateEvent) {
setTimeout(() => {
this.invokeHandler(payload);
});
} else {
this.invokeHandler(payload);
}
}
}
private invokeHandler(payload: any) {
if (typeof this.parent !== 'undefined') {
this.handler.call(this.parent, payload);
} else {
this.handler(payload);
}
}
}