numo-sdk-provider

0.2.1 • Public • Published

sdk-provider

Provides a framework in which to build provider modules for the SDK pipeline

Motivation

There are a number of parsing and configuration requirements which are entirely common to all providers which will fit into the federated search sdk stack.

This module intends to abstract those away so that a provider implementation can include only the code which is directly necessary to the acquisition of data.

These include:

  • Configuring loggers and performing standard event logging
  • Configuring result publication methods
  • Ensuring that required parameters are persisted on the data passed to publication methods
  • Handling internal lambda timeouts and emitting appropriate events

Usage

The provider wrapper creates a function which will act as a lambda handler, and in turn will call the provider with two arguments:

  • an object representing the original query parameters
  • a result emitter object with functions for the provider to emit results

Example

const Provider = require('numo-sdk-provider');
 
function MyProvider (query, emitter) {
  emitter.log('info', 'Received event');
  emitter.result({ count: 1 });
  emitter.result({ count: 2 });
  emitter.result({ count: 3 });
  emitter.end();
}
 
module.exports = Provider(MyProvider);

Emitter Methods

Creates an entry in the application logs.

log

Arguments

  • level - String
  • Remaining arguments for the body of the log entry

result

Emits a result back to the result stream to be returned to the client

Arguments

  • result - Object The data to be returned to the client

end

Emits an end event for the provider back to the result stream and terminates the lambda's execution

Arguments

None

Readme

Keywords

none

Package Sidebar

Install

npm i numo-sdk-provider

Weekly Downloads

1

Version

0.2.1

License

none

Last publish

Collaborators

  • lennym