blob: 9eb828f1f7b465eb79c8ca70ab77142b7bfad0b3 [file] [log] [blame]
Jens Geyerbd52f1a2014-07-28 01:25:30 +02001/*
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
Jens Geyerb5028322014-11-09 02:38:11 +010020
Jens Geyerbd52f1a2014-07-28 01:25:30 +020021package;
22
23import org.apache.thrift.*;
24import org.apache.thrift.protocol.*;
25import org.apache.thrift.transport.*;
26import org.apache.thrift.server.*;
27import org.apache.thrift.meta_data.*;
28
29import thrift.test.*; // generated code
30
31class Main
32{
Jens Geyerb5028322014-11-09 02:38:11 +010033 static function main() {
Oleksii Prudkyi39a09ac2016-05-19 16:55:11 +030034 #if phpwebserver
35 initPhpWebServer();
36 //check method
37 if(php.Web.getMethod() != 'POST') {
38 Sys.println('http endpoint for thrift test server');
39 return;
40 }
41 #end
42
Jens Geyerb5028322014-11-09 02:38:11 +010043 try {
44 var args = new Arguments();
45
46 if( args.printHelpOnly)
47 return;
48
49 if (args.server)
50 TestServer.Execute(args);
51 else
52 TestClient.Execute(args);
53
54 trace("Completed.");
55 } catch (e : String) {
56 trace(e);
57 }
58 }
Jens Geyerbd52f1a2014-07-28 01:25:30 +020059
Oleksii Prudkyi39a09ac2016-05-19 16:55:11 +030060 #if phpwebserver
61 private static function initPhpWebServer()
62 {
63 //remap trace to error log
64 haxe.Log.trace = function(v:Dynamic, ?infos:haxe.PosInfos)
65 {
66 // handle trace
67 var newValue : Dynamic;
68 if (infos != null && infos.customParams!=null) {
69 var extra:String = "";
70 for( v in infos.customParams )
71 extra += "," + v;
72 newValue = v + extra;
73 }
74 else {
75 newValue = v;
76 }
77 var msg = infos != null ? infos.fileName + ':' + infos.lineNumber + ': ' : '';
78 Sys.stderr().writeString('${msg}${newValue}\n');
79 }
80 }
81 #end
82
Jens Geyerbd52f1a2014-07-28 01:25:30 +020083}