seneca-service

0.2.1 • Public • Published

Seneca

Utility for managing Seneca Microservices

seneca-service

Lead Maintainer: Stephen Halliburton


npm version Build Status Dependency Status Coverage percentage

Table of Contents


Installation

$ npm i -S seneca-service

Features

  • Create Messaging/RESTful Seneca Microservices
  • Attach any number of custom plugins onto the Service
  • Specify different messaging systems to use (default: AMQP 0-9-1)

Usage

The most basic usage of this package is to create a service listener on a particular pin, e.g.: createService(PIN, options).

PIN:

Type The type of Messaging that will be used by the service (default AMQP 0-9-1) url The URL or connection string for the messaging system that is being used pin The pattern that the service will listen on and respond with different actions

Options:

serviceType The type of Service being created ('client' or 'listener') plugins The list of plugins that will be used by this service (i.e. a set of actions for a given pattern) clients (optional) A list of other services that this service is a client to (i.e. can send/receive messages)

// Import the Package
import { createService } from "seneca-service";
 
// Assuming you have a plugins directory where you export your plugins
import plugins from "./plugins";
 
// Create a Service
const service = createService(
  {
    type: "amqp",
    url: "AMQP_CONNECTION_STRING",
    pin: {
      role: "db",
      cmd: "*"
    }
  },
  {
    serviceType: "client",
    plugins
  }
);
 
// Start the Service
service.start();

Tests

  • To run the unit test: npm test

Support

Reach out to me at the following:


License

MIT © stephen halliburton

Readme

Keywords

Package Sidebar

Install

npm i seneca-service

Weekly Downloads

2

Version

0.2.1

License

MIT

Unpacked Size

140 kB

Total Files

5

Last publish

Collaborators

  • sah27513