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