blob: d87a3313e5ff4da80d86c22b34d4bb0884b9cb4b [file] [log] [blame]
Jake Farrell27274222011-11-10 20:32:44 +00001(*
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
20program server;
21
22{$APPTYPE CONSOLE}
23
24uses
25 SysUtils,
26 TestServer in 'TestServer.pas',
Jens Geyer01640402013-09-25 21:12:21 +020027 TestServerEvents in 'TestServerEvents.pas',
Jens Geyer0b20cc82013-03-07 20:47:01 +010028 Thrift.Test, // in gen-delphi folder
Roger Meier3bef8c22012-10-06 06:58:00 +000029 Thrift in '..\src\Thrift.pas',
30 Thrift.Transport in '..\src\Thrift.Transport.pas',
Jens Geyerbea9bbe2016-04-20 00:02:40 +020031 Thrift.Socket in '..\src\Thrift.Socket.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000032 Thrift.Transport.Pipes in '..\src\Thrift.Transport.Pipes.pas',
33 Thrift.Protocol in '..\src\Thrift.Protocol.pas',
34 Thrift.Protocol.JSON in '..\src\Thrift.Protocol.JSON.pas',
Jens Geyerf0e63312015-03-01 18:47:49 +010035 Thrift.Protocol.Compact in '..\src\Thrift.Protocol.Compact.pas',
Jens Geyere0e32402016-04-20 21:50:48 +020036 Thrift.Protocol.Multiplex in '..\src\Thrift.Protocol.Multiplex.pas',
37 Thrift.Processor.Multiplex in '..\src\Thrift.Processor.Multiplex.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000038 Thrift.Collections in '..\src\Thrift.Collections.pas',
39 Thrift.Server in '..\src\Thrift.Server.pas',
40 Thrift.Console in '..\src\Thrift.Console.pas',
Jens Geyer6bbbf192014-09-07 01:45:56 +020041 Thrift.TypeRegistry in '..\src\Thrift.TypeRegistry.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000042 Thrift.Utils in '..\src\Thrift.Utils.pas',
43 Thrift.Stream in '..\src\Thrift.Stream.pas';
Jake Farrell27274222011-11-10 20:32:44 +000044
45var
46 nParamCount : Integer;
47 args : array of string;
48 i : Integer;
49 arg : string;
Jake Farrell27274222011-11-10 20:32:44 +000050
51begin
52 try
53 Writeln( 'Delphi TestServer '+Thrift.Version);
54 nParamCount := ParamCount;
55 SetLength( args, nParamCount);
Jens Geyer9f7f11e2016-04-14 21:37:11 +020056 for i := 1 to nParamCount do begin
Jake Farrell27274222011-11-10 20:32:44 +000057 arg := ParamStr( i );
58 args[i-1] := arg;
59 end;
Jens Geyer9f7f11e2016-04-14 21:37:11 +020060
Jake Farrell27274222011-11-10 20:32:44 +000061 TTestServer.Execute( args );
Jens Geyer9f7f11e2016-04-14 21:37:11 +020062
Jake Farrell27274222011-11-10 20:32:44 +000063 except
Jens Geyerf8a1b7a2014-09-24 00:26:46 +020064 on E: EAbort do begin
65 ExitCode := $FF;
66 end;
67 on E: Exception do begin
Jake Farrell27274222011-11-10 20:32:44 +000068 Writeln(E.ClassName, ': ', E.Message);
Jens Geyerf8a1b7a2014-09-24 00:26:46 +020069 ExitCode := $FF;
70 end;
Jake Farrell27274222011-11-10 20:32:44 +000071 end;
72end.
73