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();
};

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 2.2.1
    42
    • latest

Version History

Package Sidebar

Install

npm i architect-stompjs

Weekly Downloads

56

Version

2.2.1

License

Apache-2.0

Unpacked Size

26 kB

Total Files

7

Last publish

Collaborators

  • echestier
  • vtricoire
  • jcreigno