blob: 4d623f390788f8a12c09f464c2eaf7610cbdda3b [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',
31 Thrift.Transport.Pipes in '..\src\Thrift.Transport.Pipes.pas',
32 Thrift.Protocol in '..\src\Thrift.Protocol.pas',
33 Thrift.Protocol.JSON in '..\src\Thrift.Protocol.JSON.pas',
Jens Geyerf0e63312015-03-01 18:47:49 +010034 Thrift.Protocol.Compact in '..\src\Thrift.Protocol.Compact.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000035 Thrift.Collections in '..\src\Thrift.Collections.pas',
36 Thrift.Server in '..\src\Thrift.Server.pas',
37 Thrift.Console in '..\src\Thrift.Console.pas',
Jens Geyer6bbbf192014-09-07 01:45:56 +020038 Thrift.TypeRegistry in '..\src\Thrift.TypeRegistry.pas',
Roger Meier3bef8c22012-10-06 06:58:00 +000039 Thrift.Utils in '..\src\Thrift.Utils.pas',
40 Thrift.Stream in '..\src\Thrift.Stream.pas';
Jake Farrell27274222011-11-10 20:32:44 +000041
42var
43 nParamCount : Integer;
44 args : array of string;
45 i : Integer;
46 arg : string;
Jake Farrell27274222011-11-10 20:32:44 +000047
48begin
49 try
50 Writeln( 'Delphi TestServer '+Thrift.Version);
51 nParamCount := ParamCount;
52 SetLength( args, nParamCount);
Jens Geyer9f7f11e2016-04-14 21:37:11 +020053 for i := 1 to nParamCount do begin
Jake Farrell27274222011-11-10 20:32:44 +000054 arg := ParamStr( i );
55 args[i-1] := arg;
56 end;
Jens Geyer9f7f11e2016-04-14 21:37:11 +020057
Jake Farrell27274222011-11-10 20:32:44 +000058 TTestServer.Execute( args );
Jens Geyer9f7f11e2016-04-14 21:37:11 +020059
Jake Farrell27274222011-11-10 20:32:44 +000060 except
Jens Geyerf8a1b7a2014-09-24 00:26:46 +020061 on E: EAbort do begin
62 ExitCode := $FF;
63 end;
64 on E: Exception do begin
Jake Farrell27274222011-11-10 20:32:44 +000065 Writeln(E.ClassName, ': ', E.Message);
Jens Geyerf8a1b7a2014-09-24 00:26:46 +020066 ExitCode := $FF;
67 end;
Jake Farrell27274222011-11-10 20:32:44 +000068 end;
69end.
70