0.3.4 • Published 8 years ago
origami-crane v0.3.4
Origami crane
Purpose
To multiplex socket into subsockets and thus optimize lower connection levels. Subsockets might want to connect to an specific namespace, and that namespace might require a secret challenge.
Requirements
- name-registry: Keeps a list of namespaces allowed to connect to this instance. Also, signs namespace requests for incoming connections. If the signature matches a subsocket connection is allowed to continue.
- initializer: delegate function that setups a subsocket after it was authenticated. It is expected to return a Promise.
- socket: undelaying socket that uses .emit/.on/.off API as an EventEmitter.
Usage
listening incoming connections sockets
var Crane = require('origami-crane');
var initializer = function (socket, namespace, crane) {
socket
.on(
'sum',
function (n1, n2, callback) {
callback(n1 + n2);
}
);
return Promise.resolve();
};
var nameRegistry; // see https://gitlab.com/origami2/name-registry/blob/master/README.md
var crane = new Crane(
nameRegistry,
intializer,
socket
);
connecting to the first crane:
var Crane = require('origami-crane');
var initializer = function (socket, namespace, crane) {
// we won't accept incoming connections
return Promise.reject();
};
var nameRegistry; // see https://gitlab.com/origami2/name-registry/blob/master/README.md
var crane = new Crane(
nameRegistry,
intializer,
socket
);
crane.createSocket(
'OtherSide', // namespace we want to connect to
function (socket, namespace, crane) {
return Promise.resolve(
// this function will be called when the socket on both ends become ready
function () {
}
);
}
);
0.3.4
8 years ago
0.3.3
8 years ago
0.3.2
8 years ago
0.3.0
8 years ago
0.2.27
8 years ago
0.1.26
8 years ago
0.1.25
8 years ago
0.1.23
8 years ago
0.1.21
8 years ago
0.1.20
8 years ago
0.1.17
8 years ago
0.1.16
8 years ago
0.1.14
8 years ago
0.1.12
8 years ago
0.1.11
8 years ago
0.1.8
8 years ago
0.1.7
8 years ago
0.1.6
8 years ago
0.1.4
8 years ago
0.1.3
8 years ago
0.1.1
8 years ago
0.1.0
8 years ago
0.0.9
8 years ago
0.0.8
8 years ago
0.0.7
8 years ago
0.0.6
8 years ago
0.0.5
8 years ago
0.0.4
8 years ago
0.0.3
8 years ago
0.0.1
8 years ago