nope/modules/mod-Publish-And-Subscribe-System/test/Function-Test.ts

36 lines
1.1 KiB
TypeScript
Raw Normal View History

2020-08-30 07:45:44 +00:00
/**
* @author Martin Karkowski
* @email m.karkowski@zema.de
* @create date 2018-05-22 01:13:13
2020-09-08 14:59:06 +00:00
* @modify date 2020-09-08 16:05:38
2020-08-30 07:45:44 +00:00
* @desc [description]
*/
import { Builder } from '../../mod-Assembly-Builder/src/Container-Builder.FileLoader';
2020-09-08 14:59:06 +00:00
import { DESCRIPTION, PubSubSystem } from '../assembly/manual-assembly';
2020-08-30 07:45:44 +00:00
2020-09-08 14:59:06 +00:00
Builder.instance.addElements(DESCRIPTION.PROVIDED_CLASSES)
Builder.instance.addActivationHandler(DESCRIPTION.ACTIVATIONHANDLERS);
2020-08-30 07:45:44 +00:00
Builder.load();
Builder.on('loaded', () => {
/** Create A PubSubSystem */
2020-09-08 14:59:06 +00:00
const _pubSub = Builder.instance.container.get<PubSubSystem>(DESCRIPTION.TYPES.PubSubSystem);
2020-08-30 07:45:44 +00:00
const _sub = _pubSub.createSubscription<number>('test.topic', (_data, _topic, _timestamp) => {
console.log('received with inform', _data);
});
_pubSub.createPublisher<number>('test.topic.child').publishData(1);
_pubSub.createPublisher<number>('test.topic').publishData(2);
_sub.options.mode = ['direct'];
_pubSub.createPublisher<number>('test.topic.child').publishData(3);
_pubSub.createPublisher<number>('test.topic').publishData(4);
});