mirror of
https://github.com/hensm/fx_cast.git
synced 2026-06-11 01:59:58 +00:00
Convert ext lib to typescript
This commit is contained in:
26
ext/src/lib/messageRouter.ts
Normal file
26
ext/src/lib/messageRouter.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
"use strict";
|
||||
|
||||
type SenderCallback = (message: any, details: any) => void;
|
||||
|
||||
const routeMap = new Map<string, SenderCallback>();
|
||||
|
||||
function register (routeName: string, senderCallback: SenderCallback) {
|
||||
routeMap.set(routeName, senderCallback);
|
||||
}
|
||||
|
||||
function deregister (routeName: string) {
|
||||
routeMap.delete(routeName);
|
||||
}
|
||||
|
||||
function handleMessage (message: any, details?: any) {
|
||||
const destination = message.subject.split(":")[0];
|
||||
if (routeMap.has(destination)) {
|
||||
routeMap.get(destination)(message, details);
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
register
|
||||
, deregister
|
||||
, handleMessage
|
||||
};
|
||||
Reference in New Issue
Block a user