You've already forked lazarus-ccr
54 lines
1.5 KiB
ObjectPascal
54 lines
1.5 KiB
ObjectPascal
![]() |
// Activate this "define" to logg the messages to the screen
|
||
|
{ $DEFINE WST_LOGGING_CONSOLE}
|
||
|
// Activate this "define" to logg the messages to the file set in "LogFileCompleteName"
|
||
|
{ $DEFINE WST_LOGGING_FILE}
|
||
|
|
||
|
program sample;
|
||
|
|
||
|
{$mode objfpc}{$H+}
|
||
|
|
||
|
uses
|
||
|
{$IFDEF UNIX}{$IFDEF UseCThreads}
|
||
|
cthreads,
|
||
|
{$ENDIF}{$ENDIF}
|
||
|
Classes, SysUtils,
|
||
|
server_listener, indy_http_server,
|
||
|
server_service_intf, server_service_soap, metadata_service,
|
||
|
{$IFDEF WST_LOGGING_CONSOLE}
|
||
|
logger_extension,
|
||
|
{$ENDIF}
|
||
|
{$IFDEF WST_LOGGING_FILE}
|
||
|
file_logger_extension,
|
||
|
{$ENDIF}
|
||
|
base64sample, base64sample_binder, base64sample_imp;
|
||
|
|
||
|
var
|
||
|
AppObject : TwstListener;
|
||
|
begin
|
||
|
Server_service_RegisterSoapFormat();
|
||
|
|
||
|
RegisterSampleServiceImplementationFactory();
|
||
|
Server_service_RegisterSampleServiceService();
|
||
|
|
||
|
{$IFDEF WST_LOGGING_FILE}
|
||
|
LogFileCompleteName := Format('.%s%s',[PathDelim,'log.txt']);
|
||
|
GetServiceImplementationRegistry().FindFactory('SampleService').RegisterExtension(['TFileLoggerServiceExtension']);
|
||
|
{$ENDIF}
|
||
|
{$IFDEF WST_LOGGING_CONSOLE}
|
||
|
GetServiceImplementationRegistry().FindFactory('SampleService').RegisterExtension(['TLoggerServiceExtension']);
|
||
|
{$ENDIF}
|
||
|
|
||
|
AppObject := TwstIndyHttpListener.Create('');
|
||
|
try
|
||
|
WriteLn('"Web Service Toolkit" HTTP Server sample listening at:');
|
||
|
WriteLn('');
|
||
|
WriteLn('http://127.0.0.1:8000/');
|
||
|
WriteLn('');
|
||
|
WriteLn('Press enter to quit.');
|
||
|
AppObject.Start();
|
||
|
ReadLn();
|
||
|
finally
|
||
|
FreeAndNil(AppObject);
|
||
|
end;
|
||
|
end.
|