Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 1 | (* |
| 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 | |
| 21 | program client; |
| 22 | |
| 23 | {$APPTYPE CONSOLE} |
| 24 | |
| 25 | uses |
Jake Farrell | 2727422 | 2011-11-10 20:32:44 +0000 | [diff] [blame] | 26 | SysUtils, |
Jens Geyer | b342bd9 | 2019-06-03 20:27:00 +0200 | [diff] [blame] | 27 | DataFactory in 'Performance\DataFactory.pas', |
| 28 | PerfTests in 'Performance\PerfTests.pas', |
Jake Farrell | 2727422 | 2011-11-10 20:32:44 +0000 | [diff] [blame] | 29 | TestClient in 'TestClient.pas', |
Jens Geyer | 66f9536 | 2021-03-29 20:35:41 +0200 | [diff] [blame] | 30 | Thrift.Test in 'gen-delphi\Thrift.Test.pas', |
Roger Meier | 3bef8c2 | 2012-10-06 06:58:00 +0000 | [diff] [blame] | 31 | Thrift in '..\src\Thrift.pas', |
| 32 | Thrift.Transport in '..\src\Thrift.Transport.pas', |
Jens Geyer | bea9bbe | 2016-04-20 00:02:40 +0200 | [diff] [blame] | 33 | Thrift.Socket in '..\src\Thrift.Socket.pas', |
Jens Geyer | a019cda | 2019-11-09 23:24:52 +0100 | [diff] [blame] | 34 | Thrift.Configuration in '..\src\Thrift.Configuration.pas', |
Jens Geyer | 606f1ef | 2018-04-09 23:09:41 +0200 | [diff] [blame] | 35 | Thrift.Exception in '..\src\Thrift.Exception.pas', |
Roger Meier | 3bef8c2 | 2012-10-06 06:58:00 +0000 | [diff] [blame] | 36 | Thrift.Transport.Pipes in '..\src\Thrift.Transport.Pipes.pas', |
Jens Geyer | 0223091 | 2019-04-03 01:12:51 +0200 | [diff] [blame] | 37 | Thrift.Transport.WinHTTP in '..\src\Thrift.Transport.WinHTTP.pas', |
| 38 | Thrift.Transport.MsxmlHTTP in '..\src\Thrift.Transport.MsxmlHTTP.pas', |
Roger Meier | 3bef8c2 | 2012-10-06 06:58:00 +0000 | [diff] [blame] | 39 | Thrift.Protocol in '..\src\Thrift.Protocol.pas', |
| 40 | Thrift.Protocol.JSON in '..\src\Thrift.Protocol.JSON.pas', |
Jens Geyer | f0e6331 | 2015-03-01 18:47:49 +0100 | [diff] [blame] | 41 | Thrift.Protocol.Compact in '..\src\Thrift.Protocol.Compact.pas', |
Jens Geyer | e0e3240 | 2016-04-20 21:50:48 +0200 | [diff] [blame] | 42 | Thrift.Protocol.Multiplex in '..\src\Thrift.Protocol.Multiplex.pas', |
Roger Meier | 3bef8c2 | 2012-10-06 06:58:00 +0000 | [diff] [blame] | 43 | Thrift.Collections in '..\src\Thrift.Collections.pas', |
| 44 | Thrift.Server in '..\src\Thrift.Server.pas', |
| 45 | Thrift.Stream in '..\src\Thrift.Stream.pas', |
Jens Geyer | 6bbbf19 | 2014-09-07 01:45:56 +0200 | [diff] [blame] | 46 | Thrift.TypeRegistry in '..\src\Thrift.TypeRegistry.pas', |
Jens Geyer | 0223091 | 2019-04-03 01:12:51 +0200 | [diff] [blame] | 47 | Thrift.WinHTTP in '..\src\Thrift.WinHTTP.pas', |
Roger Meier | 3bef8c2 | 2012-10-06 06:58:00 +0000 | [diff] [blame] | 48 | Thrift.Utils in '..\src\Thrift.Utils.pas'; |
Jake Farrell | 2727422 | 2011-11-10 20:32:44 +0000 | [diff] [blame] | 49 | |
Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 50 | var |
| 51 | nParamCount : Integer; |
| 52 | args : array of string; |
| 53 | i : Integer; |
| 54 | arg : string; |
Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 55 | |
| 56 | begin |
| 57 | try |
| 58 | Writeln( 'Delphi TestClient '+Thrift.Version); |
| 59 | nParamCount := ParamCount; |
| 60 | SetLength( args, nParamCount); |
Jens Geyer | 9f7f11e | 2016-04-14 21:37:11 +0200 | [diff] [blame] | 61 | for i := 1 to nParamCount do begin |
Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 62 | arg := ParamStr( i ); |
| 63 | args[i-1] := arg; |
| 64 | end; |
Jens Geyer | 9f7f11e | 2016-04-14 21:37:11 +0200 | [diff] [blame] | 65 | |
Jens Geyer | f8a1b7a | 2014-09-24 00:26:46 +0200 | [diff] [blame] | 66 | ExitCode := TTestClient.Execute( args); |
Jens Geyer | 9f7f11e | 2016-04-14 21:37:11 +0200 | [diff] [blame] | 67 | |
Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 68 | except |
Jens Geyer | f8a1b7a | 2014-09-24 00:26:46 +0200 | [diff] [blame] | 69 | on E: EAbort do begin |
| 70 | ExitCode := $FF; |
| 71 | end; |
Roger Meier | bb6de7a | 2012-05-04 23:35:45 +0000 | [diff] [blame] | 72 | on E: Exception do begin |
Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 73 | Writeln(E.ClassName, ': ', E.Message); |
Jens Geyer | f8a1b7a | 2014-09-24 00:26:46 +0200 | [diff] [blame] | 74 | ExitCode := $FF; |
Roger Meier | bb6de7a | 2012-05-04 23:35:45 +0000 | [diff] [blame] | 75 | end; |
Jake Farrell | 29defeb | 2011-11-10 21:11:46 +0000 | [diff] [blame] | 76 | end; |
| 77 | end. |
| 78 | |