36 lines
1.1 KiB
TypeScript
36 lines
1.1 KiB
TypeScript
/**
|
|
* @author Martin Karkowski
|
|
* @email m.karkowski@zema.de
|
|
* @create date 2018-05-22 01:13:13
|
|
* @modify date 2020-09-08 16:05:38
|
|
* @desc [description]
|
|
*/
|
|
|
|
import { Builder } from '../../mod-Assembly-Builder/src/Container-Builder.FileLoader';
|
|
import { DESCRIPTION, PubSubSystem } from '../assembly/manual-assembly';
|
|
|
|
Builder.instance.addElements(DESCRIPTION.PROVIDED_CLASSES)
|
|
Builder.instance.addActivationHandler(DESCRIPTION.ACTIVATIONHANDLERS);
|
|
|
|
Builder.load();
|
|
|
|
Builder.on('loaded', () => {
|
|
|
|
/** Create A PubSubSystem */
|
|
const _pubSub = Builder.instance.container.get<PubSubSystem>(DESCRIPTION.TYPES.PubSubSystem);
|
|
|
|
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);
|
|
|
|
});
|
|
|