blob: 0cab02f339571369b27b8d0bc4cc519f9b6b10c0 [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,
Jens Geyer82fc93e2024-05-24 23:36:07 +020026 TestConstants in 'testsuite\TestConstants.pas',
27 TestServer in 'testsuite\server\TestServer.pas',
28 TestServerEvents in 'testsuite\server\TestServerEvents.pas',
Jens Geyer66f95362021-03-29 20:35:41 +020029 Thrift.Test in 'gen-delphi\Thrift.Test.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000030 Thrift in '..\src\Thrift.pas',
Jens Geyer606f1ef2018-04-09 23:09:41 +020031 Thrift.Exception in '..\src\Thrift.Exception.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000032 Thrift.Transport in '..\src\Thrift.Transport.pas',
Jens Geyerbea9bbe2016-04-20 00:02:40 +020033 Thrift.Socket in '..\src\Thrift.Socket.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000034 Thrift.Transport.Pipes in '..\src\Thrift.Transport.Pipes.pas',
35 Thrift.Protocol in '..\src\Thrift.Protocol.pas',
36 Thrift.Protocol.JSON in '..\src\Thrift.Protocol.JSON.pas',
Jens Geyerf0e63312015-03-01 18:47:49 +010037 Thrift.Protocol.Compact in '..\src\Thrift.Protocol.Compact.pas',
Jens Geyere0e32402016-04-20 21:50:48 +020038 Thrift.Protocol.Multiplex in '..\src\Thrift.Protocol.Multiplex.pas',
39 Thrift.Processor.Multiplex in '..\src\Thrift.Processor.Multiplex.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000040 Thrift.Collections in '..\src\Thrift.Collections.pas',
Jens Geyera019cda2019-11-09 23:24:52 +010041 Thrift.Configuration in '..\src\Thrift.Configuration.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000042 Thrift.Server in '..\src\Thrift.Server.pas',
Jens Geyer6bbbf192014-09-07 01:45:56 +020043 Thrift.TypeRegistry in '..\src\Thrift.TypeRegistry.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000044 Thrift.Utils in '..\src\Thrift.Utils.pas',
Jens Geyer02230912019-04-03 01:12:51 +020045 Thrift.WinHTTP in '..\src\Thrift.WinHTTP.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000046 Thrift.Stream in '..\src\Thrift.Stream.pas';
Jake Farrell27274222011-11-10 20:32:44 +000047
48var
49 nParamCount : Integer;
50 args : array of string;
51 i : Integer;
52 arg : string;
Jake Farrell27274222011-11-10 20:32:44 +000053
54begin
55 try
56 Writeln( 'Delphi TestServer '+Thrift.Version);
57 nParamCount := ParamCount;
58 SetLength( args, nParamCount);
Jens Geyer9f7f11e2016-04-14 21:37:11 +020059 for i := 1 to nParamCount do begin
Jake Farrell27274222011-11-10 20:32:44 +000060 arg := ParamStr( i );
61 args[i-1] := arg;
62 end;
Jens Geyer9f7f11e2016-04-14 21:37:11 +020063
Jake Farrell27274222011-11-10 20:32:44 +000064 TTestServer.Execute( args );
Jens Geyer9f7f11e2016-04-14 21:37:11 +020065
Jake Farrell27274222011-11-10 20:32:44 +000066 except
Jens Geyerf8a1b7a2014-09-24 00:26:46 +020067 on E: EAbort do begin
68 ExitCode := $FF;
69 end;
70 on E: Exception do begin
Jake Farrell27274222011-11-10 20:32:44 +000071 Writeln(E.ClassName, ': ', E.Message);
Jens Geyerf8a1b7a2014-09-24 00:26:46 +020072 ExitCode := $FF;
73 end;
Jake Farrell27274222011-11-10 20:32:44 +000074 end;
75end.
76