⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 salary_c.pas

📁 Delphi6分布式开发例程7 )
💻 PAS
字号:
unit salary_c;

{This file was generated on 16 Sep 2001 10:46:29 GMT by version 03.03.03.C1.A1}
{of the Inprise VisiBroker idl2pas CORBA IDL compiler.                        }

{Please do not edit the contents of this file. You should instead edit and    }
{recompile the original IDL which was located in the file                     }
{E:\corba\Salary.idl.                                                         }

{Delphi Pascal unit      : salary_c                                         }
{derived from IDL module : salary                                           }



interface

uses
  CORBA,
  salary_i;

type
  TITaxCalHelper = class;
  TITaxCalStub = class;
  TTaxCalFactoryHelper = class;
  TTaxCalFactoryStub = class;

  TITaxCalHelper = class
    class procedure Insert (var _A: CORBA.Any; const _Value : salary_i.ITaxCal);
    class function  Extract(var _A: CORBA.Any) : salary_i.ITaxCal;
    class function  TypeCode     : CORBA.TypeCode;
    class function  RepositoryId : string;
    class function  Read (const _Input  : CORBA.InputStream) : salary_i.ITaxCal;
    class procedure Write(const _Output : CORBA.OutputStream; const _Value : salary_i.ITaxCal);
    class function  Narrow(const _Obj   : CORBA.CORBAObject; _IsA : Boolean = False) : salary_i.ITaxCal;
    class function  Bind(const _InstanceName : string = ''; _HostName : string = '') : salary_i.ITaxCal; overload;
    class function  Bind(_Options : BindOptions; const _InstanceName : string = ''; _HostName: string = '') : salary_i.ITaxCal; overload;
  end;

  TITaxCalStub = class(CORBA.TCORBAObject, salary_i.ITaxCal)
  public
    procedure SetSalary ( const x : Single); virtual;
    function  GetTax : Single; virtual;
    function  GetMySalary : Single; virtual;
  end;

  TTaxCalFactoryHelper = class
    class procedure Insert (var _A: CORBA.Any; const _Value : salary_i.TaxCalFactory);
    class function  Extract(var _A: CORBA.Any) : salary_i.TaxCalFactory;
    class function  TypeCode     : CORBA.TypeCode;
    class function  RepositoryId : string;
    class function  Read (const _Input  : CORBA.InputStream) : salary_i.TaxCalFactory;
    class procedure Write(const _Output : CORBA.OutputStream; const _Value : salary_i.TaxCalFactory);
    class function  Narrow(const _Obj   : CORBA.CORBAObject; _IsA : Boolean = False) : salary_i.TaxCalFactory;
    class function  Bind(const _InstanceName : string = ''; _HostName : string = '') : salary_i.TaxCalFactory; overload;
    class function  Bind(_Options : BindOptions; const _InstanceName : string = ''; _HostName: string = '') : salary_i.TaxCalFactory; overload;
  end;

  TTaxCalFactoryStub = class(CORBA.TCORBAObject, salary_i.TaxCalFactory)
  public
    function  CreateInstance ( const InstanceName : AnsiString): salary_i.ITaxCal; virtual;
  end;


implementation

class procedure TITaxCalHelper.Insert(var _A : CORBA.Any; const _Value : salary_i.ITaxCal);
begin
  _A := Orb.MakeObjectRef( TITaxCalHelper.TypeCode, _Value as CORBA.CORBAObject);
end;

class function TITaxCalHelper.Extract(var _A : CORBA.Any): salary_i.ITaxCal;
var
  _obj : Corba.CorbaObject;
begin
  _obj := Orb.GetObjectRef(_A);
  Result := TITaxCalHelper.Narrow(_obj, True);
end;

class function TITaxCalHelper.TypeCode : CORBA.TypeCode;
begin
  Result := ORB.CreateInterfaceTC(RepositoryId, 'ITaxCal');
end;

class function TITaxCalHelper.RepositoryId : string;
begin
  Result := 'IDL:salary/ITaxCal:1.0';
end;

class function TITaxCalHelper.Read(const _Input : CORBA.InputStream) : salary_i.ITaxCal;
var
  _Obj : CORBA.CORBAObject;
begin
  _Input.ReadObject(_Obj);
  Result := Narrow(_Obj, True)
end;

class procedure TITaxCalHelper.Write(const _Output : CORBA.OutputStream; const _Value : salary_i.ITaxCal);
begin
  _Output.WriteObject(_Value as CORBA.CORBAObject);
end;

class function TITaxCalHelper.Narrow(const _Obj : CORBA.CORBAObject; _IsA : Boolean) : salary_i.ITaxCal;
begin
  Result := nil;
  if (_Obj = nil) or (_Obj.QueryInterface(salary_i.ITaxCal, Result) = 0) then
    exit;
  if _IsA and _Obj._IsA(RepositoryId) then
    Result := TITaxCalStub.Create(_Obj);
end;

class function TITaxCalHelper.Bind(const _InstanceName : string = ''; _HostName: string = '') : salary_i.ITaxCal;
begin
  Result := Narrow(ORB.bind(RepositoryId, _InstanceName, _HostName), True);
end;

class function TITaxCalHelper.Bind(_Options : BindOptions; const _InstanceName : string = ''; _HostName : string = '') : salary_i.ITaxCal;
begin
  Result := Narrow(ORB.bind(RepositoryId, _Options, _InstanceName, _HostName), True);
end;

procedure TITaxCalStub.SetSalary ( const x : Single);
var
  _Output: CORBA.OutputStream;
  _Input : CORBA.InputStream;
begin
  inherited _CreateRequest('SetSalary',True, _Output);
  _Output.WriteFloat(x);
  inherited _Invoke(_Output, _Input);
end;

function  TITaxCalStub.GetTax : Single;
var
  _Output: CORBA.OutputStream;
  _Input : CORBA.InputStream;
begin
  inherited _CreateRequest('GetTax',True, _Output);
  inherited _Invoke(_Output, _Input);
  _Input.ReadFloat(Result);
end;

function  TITaxCalStub.GetMySalary : Single;
var
  _Output: CORBA.OutputStream;
  _Input : CORBA.InputStream;
begin
  inherited _CreateRequest('GetMySalary',True, _Output);
  inherited _Invoke(_Output, _Input);
  _Input.ReadFloat(Result);
end;

class procedure TTaxCalFactoryHelper.Insert(var _A : CORBA.Any; const _Value : salary_i.TaxCalFactory);
begin
  _A := Orb.MakeObjectRef( TTaxCalFactoryHelper.TypeCode, _Value as CORBA.CORBAObject);
end;

class function TTaxCalFactoryHelper.Extract(var _A : CORBA.Any): salary_i.TaxCalFactory;
var
  _obj : Corba.CorbaObject;
begin
  _obj := Orb.GetObjectRef(_A);
  Result := TTaxCalFactoryHelper.Narrow(_obj, True);
end;

class function TTaxCalFactoryHelper.TypeCode : CORBA.TypeCode;
begin
  Result := ORB.CreateInterfaceTC(RepositoryId, 'TaxCalFactory');
end;

class function TTaxCalFactoryHelper.RepositoryId : string;
begin
  Result := 'IDL:salary/TaxCalFactory:1.0';
end;

class function TTaxCalFactoryHelper.Read(const _Input : CORBA.InputStream) : salary_i.TaxCalFactory;
var
  _Obj : CORBA.CORBAObject;
begin
  _Input.ReadObject(_Obj);
  Result := Narrow(_Obj, True)
end;

class procedure TTaxCalFactoryHelper.Write(const _Output : CORBA.OutputStream; const _Value : salary_i.TaxCalFactory);
begin
  _Output.WriteObject(_Value as CORBA.CORBAObject);
end;

class function TTaxCalFactoryHelper.Narrow(const _Obj : CORBA.CORBAObject; _IsA : Boolean) : salary_i.TaxCalFactory;
begin
  Result := nil;
  if (_Obj = nil) or (_Obj.QueryInterface(salary_i.TaxCalFactory, Result) = 0) then
    exit;
  if _IsA and _Obj._IsA(RepositoryId) then
    Result := TTaxCalFactoryStub.Create(_Obj);
end;

class function TTaxCalFactoryHelper.Bind(const _InstanceName : string = ''; _HostName: string = '') : salary_i.TaxCalFactory;
begin
  Result := Narrow(ORB.bind(RepositoryId, _InstanceName, _HostName), True);
end;

class function TTaxCalFactoryHelper.Bind(_Options : BindOptions; const _InstanceName : string = ''; _HostName : string = '') : salary_i.TaxCalFactory;
begin
  Result := Narrow(ORB.bind(RepositoryId, _Options, _InstanceName, _HostName), True);
end;

function  TTaxCalFactoryStub.CreateInstance ( const InstanceName : AnsiString): salary_i.ITaxCal;
var
  _Output: CORBA.OutputStream;
  _Input : CORBA.InputStream;
begin
  inherited _CreateRequest('CreateInstance',True, _Output);
  _Output.WriteString(InstanceName);
  inherited _Invoke(_Output, _Input);
  Result := salary_c.TITaxCalHelper.Read(_Input);
end;


initialization


end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -