architect-stompjs

    2.2.1 • Public • Published

    architect-stompjs

    Expose a stompit client as an architect service.

    Installation

    npm install --save architect-stompjs

    Config Format

    {
      "packagePath": "architect-stompjs",
      config: [{
        host: 'localhost',
        port: 61613
      }]
    }

    Supported config elements

    config

    Config element is an array of servers as in stompit connection servers.

    #### srv

    Aternatively, specify a SRV dns name to lookup hosts and ports from DNS.

    {
      "packagePath": "architect-stompjs",
      srv: {
        name: 'activemq.example.com'
        opts: {
          connectHeaders: {
              'heart-beat': '25000,25000'
          }
        }
      }
    }

    queues

    Add a queues object to configure queues avaliable in your application.

    topics

    Add a topics object to configure topics avaliable in your application.

    Usage

    Boot Architect :

    var path = require('path');
    var architect = require("architect");
    
    var configPath = path.join(__dirname, "config.js");
    var config = architect.loadConfig(configPath);
    
    architect.createApp(config, function (err, app) {
        if (err) {
            throw err;
        }
        console.log('application started');
    });

    This module require architect-log4js or equivalent as logging service.

    Configure sptom service with config.js :

    module.exports = [{
        packagePath: "architect-stompjs"
    }{
        packagePath: "architect-log4js"
    }, './routes'];

    Consume stomp service in your application :

    {
      "name": "routes",
      "version": "0.0.1",
      "main": "index.js",
      "private": true,
    
      "plugin": {
        "consumes": ["stomp"]
      }
    }

    Eventually use the stomp service in your app :

    module.exports = function setup(options, imports, register) {
        var stomp = imports.stomp; //get stomp client
        stomp.channel.send('/queue/myqueue', {}, 'application has started.');
        register();
    };

    Using Queues Alias

    Configure your alias in the architect config.js file :

    {
      "packagePath": "architect-log4js",
      config: [{
        host: 'localhost',
        port: 61613
      }],
      queues: {
        'myqueue' : {
            'destination': '/queue/my.queue.name.is.super.long'
            'ack': 'client',
        }
      }
    }

    Now you can send and recieve messages with the queue alias :

    module.exports = function setup(options, imports, register) {
        var client = imports.stomp; //get stomp client
        var myqueue = client.queues.myqueue;
        myqueue.send('application has started.');
        register();
    };

    Install

    npm i architect-stompjs

    DownloadsWeekly Downloads

    29

    Version

    2.2.1

    License

    Apache-2.0

    Unpacked Size

    26 kB

    Total Files

    7

    Last publish

    Collaborators

    • jcreigno