blob: c4cbc9f89611a2ccf4e369ebeaa3bb70d78c5fe0 [file] [log] [blame]
Cameron Martincaef0ed2025-01-15 11:58:39 +01001var thrift = require("thrift");
2var helloSvc = require("./gen-nodejs/HelloSvc");
ra779b9ac2014-04-23 20:04:23 -07003
Cameron Martincaef0ed2025-01-15 11:58:39 +01004//ServiceHandler: Implement the hello service
ra779b9ac2014-04-23 20:04:23 -07005var helloHandler = {
6 hello_func: function (result) {
7 console.log("Received Hello call");
8 result(null, "Hello from Node.js");
Cameron Martincaef0ed2025-01-15 11:58:39 +01009 },
ra779b9ac2014-04-23 20:04:23 -070010};
11
12//ServiceOptions: The I/O stack for the service
Cameron Martincaef0ed2025-01-15 11:58:39 +010013var helloSvcOpt = {
14 handler: helloHandler,
15 processor: helloSvc,
16 protocol: thrift.TJSONProtocol,
17 transport: thrift.TBufferedTransport,
18};
ra779b9ac2014-04-23 20:04:23 -070019
20//ServerOptions: Define server features
Cameron Martincaef0ed2025-01-15 11:58:39 +010021var serverOpt = {
22 services: {
23 "/hello": helloSvcOpt,
24 },
25};
ra779b9ac2014-04-23 20:04:23 -070026
Cameron Martincaef0ed2025-01-15 11:58:39 +010027//Create and start the web server
28var port = 9090;
29thrift.createWebServer(serverOpt).listen(port);
ra779b9ac2014-04-23 20:04:23 -070030console.log("Http/Thrift Server running on port: " + port);