diff --git a/lib/bindings/http/emitter_binary_1.js b/lib/bindings/http/emitter_binary_1.js new file mode 100644 index 0000000..d381280 --- /dev/null +++ b/lib/bindings/http/emitter_binary_1.js @@ -0,0 +1,59 @@ +const BinaryHTTPEmitter = require("./emitter_binary.js"); + +const Constants = require("./constants.js"); + +const headerByGetter = {}; + +headerByGetter["getDataContentType"] = { + name : Constants.HEADER_CONTENT_TYPE, + parser : (v) => v +}; + +headerByGetter["getSubject"] = { + name : Constants.BINARY_HEADERS_1.SUBJECT, + parser : (v) => v +}; + +headerByGetter["getType"] = { + name : Constants.BINARY_HEADERS_1.TYPE, + parser : (v) => v +}; + +headerByGetter["getSpecversion"] = { + name : Constants.BINARY_HEADERS_1.SPEC_VERSION, + parser : (v) => v +}; + +headerByGetter["getSource"] = { + name : Constants.BINARY_HEADERS_1.SOURCE, + parser : (v) => v +}; + +headerByGetter["getId"] = { + name : Constants.BINARY_HEADERS_1.ID, + parser : (v) => v +}; + +headerByGetter["getTime"] = { + name : Constants.BINARY_HEADERS_1.TIME, + parser : (v) => v +}; + +headerByGetter["getDataschema"] = { + name : Constants.BINARY_HEADERS_1.DATA_SCHEMA, + parser : (v) => v +}; + +function HTTPBinary(configuration){ + this.emitter = new BinaryHTTPEmitter( + configuration, + headerByGetter, + Constants.BINARY_HEADERS_1.EXTENSIONS_PREFIX + ); +} + +HTTPBinary.prototype.emit = function(cloudevent){ + return this.emitter.emit(cloudevent); +}; + +module.exports = HTTPBinary;