Componentes.Terceros.RemObj.../official/5.0.23.613/RemObjects SDK for Delphi/Samples/Class Factories/PooledService_Impl.pas

53 lines
1.1 KiB
ObjectPascal

unit PooledService_Impl;
interface
uses Classes, uROClientIntf, uROServer, uROServerIntf, ClassFactoryLibrary_Intf;
type
TPooledService = class(TRORemotable, IPooledService)
private
fValue: integer;
protected
function GetValue: Integer;
procedure SetValue(const aValue: Integer);
public
constructor Create; override;
end;
implementation
uses uROClassFactories, ClassFactoryLibrary_Invk, Dialogs;
procedure Create_PooledService(out anInstance: IUnknown);
begin
anInstance := TPooledService.Create;
end;
constructor TPooledService.Create;
begin
inherited;
FValue := 0;
end;
function TPooledService.GetValue: Integer;
begin
MessageDlg('GetValue executing...', mtWarning, [mbOK], 0);
result := fValue;
end;
procedure TPooledService.SetValue(const aValue: Integer);
begin
MessageDlg('SetValue executing...', mtWarning, [mbOK], 0);
fValue := aValue;
end;
initialization
TROPooledClassFactory.Create('PooledService', Create_PooledService, TPooledService_Invoker, 2);
finalization
end.