diffusion
Version:
Diffusion JavaScript client
28 lines (27 loc) • 1.31 kB
JavaScript
;
/**
* @module Services.RemoteServers
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.readRemoteServer = void 0;
var remote_server_1 = require("./../../features/remote-servers/remote-server");
var Codec = require("./../../io/codec");
var remote_servers_1 = require("../../../features/remote-servers");
var BEES = require("../../serialisers/byte-encoded-enum-serialiser");
/**
* Read a remote server from the stream
*
* @param bis the input stream
* @return the {@link RemoteServer} that was read
*/
function readRemoteServer(bis) {
var type = BEES.read(bis, remote_servers_1.RemoteServerType);
var name = Codec.readString(bis);
var urls = Codec.readCollection(bis, Codec.readString);
var principal = Codec.readString(bis);
var connectionOptions = Codec.readObject(bis, function (s) { return BEES.read(s, remote_servers_1.ConnectionOption); }, Codec.readString);
var missingTopicNotificationFilter = Codec.readString(bis);
var connector = Codec.readString(bis);
return new remote_server_1.RemoteServerImpl(type, name, urls, principal, connectionOptions, missingTopicNotificationFilter !== '' ? missingTopicNotificationFilter : undefined, connector !== '' ? connector : undefined);
}
exports.readRemoteServer = readRemoteServer;