blob: da9a4d6b789094981ef2cf3683456c25bc01a1f9 [file] [log] [blame]
Roger Meier8909cbd2014-01-26 11:44:27 +01001/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * 'License'); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * 'AS IS' BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
17 * under the License.
18 */
19
20//Server test for the following I/O stack:
21// TBinaryProtocol
22// TFramedTransport
23// TSocket
24
25var thrift = require('thrift');
26var ThriftTransports = require('thrift/transport');
27var ThriftProtocols = require('thrift/protocol');
28var ThriftTest = require('./gen-nodejs/ThriftTest');
29var ThriftTestHandler = require('./test_handler').ThriftTestHandler;
30
31
32var program = require('commander');
33
34program
35 .option('-p, --protocol <protocol>', 'Set thift protocol (binary|json) [protocol]')
36 .option('-t, --transport <transport>', 'Set thift transport (buffered|framed) [transport]')
37 .parse(process.argv);
38
39var protocol = undefined;
40var transport = undefined;
41
42if (program.protocol === "binary") {
43 protocol = ThriftProtocols.TBinaryProtocol;
44} else if (program.protocol === "json") {
45 protocol = ThriftProtocols.TJSONProtocol;
46} else {
47 //default
48 protocol = ThriftProtocols.TBinaryProtocol;
49}
50
51if (program.transport === "framed") {
52 transport = ThriftTransports.TFramedTransport;
53} else if (program.transport === "buffered") {
54 transport = ThriftTransports.TBufferedTransport;
55} else {
56 //default
57 transport = ThriftTransports.TBufferedTransport;
58}
59
60thrift.createServer(ThriftTest, ThriftTestHandler, {
61 protocol: protocol,
62 transport: transport
63}).listen(9090);