Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Types in wsdl not imported

86 views
Skip to first unread message

Agostinho

unread,
May 2, 2007, 12:03:46 PM5/2/07
to
Hi,

when importin a wsdl, the next comment is add to .pas:

// ************************************************************************
//
// The following types, referred to in the WSDL document are not being
represented
// in this file. They are either aliases[@] of other types represented or
were referred
// to but never[!] declared in the document. The types from the latter
category
// typically map to predefined/known XML or Borland types; however, they
could also
// indicate incorrect WSDL documents that failed to declare or import a
schema type.
//
************************************************************************ //
// !:MessageHeader - "http://www.ebxml.org/namespaces/messageHeader"
// !:Security - "http://schemas.xmlsoap.org/ws/2002/12/secext"
// !:SessionCreateRQ - "http://www.opentravel.org/OTA/2002/11"
// !:SessionCreateRS - "http://www.opentravel.org/OTA/2002/11"

and project has error when compiled.

any help?

[]'s

Agostinho


Agostinho

unread,
May 2, 2007, 1:45:35 PM5/2/07
to
Hi,

Files wsdl and xsd in borland.public.attachments.

Agostinho

"Agostinho" <agos...@mgmoperadora.com.br> escreveu na mensagem
news:4638b655$1...@newsgroups.borland.com...

Jean-Marie Babet

unread,
May 4, 2007, 5:23:24 PM5/4/07
to
Hello Agostinho,

Thanks for the post. I'm slowly catching up on the newsgroup as we're
nearing another deadline.

I'll relay back my findings later tonight or this weekend.

Cheers,

Bruneau.


Jean-Marie Babet

unread,
Jun 4, 2007, 4:45:50 PM6/4/07
to
Hello,

I apologize for the delay. We finally signed off C++Builder (yesterday) and
I finally have some time to investigate. The problem is that the importer
does not correctly handle global <element...> declarations that declare a
complex type inline, as in:

<xs:element name="SessionCreateRQ">
<xs:complexType>
<xs:sequence>
<xs:element name="POS">

I'm trying out a fix right now. I'll post my results later today.

Cheers,

Bruneau.


Jean-Marie Babet

unread,
Jun 4, 2007, 6:18:03 PM6/4/07
to
Hello,

My fix addressed the "SessionCreateRQ" problem but there's something else
that popped: where not handling the MessageHeader type correctly. Below is
the .pas file generated by the tweaked importer. Unfortunately, I have to
run to a meeting and then we're having a little get together to celebrate
signing off C++Builder. I'll work on the MessageHeader issue later today or
tomorrow.

Cheers,

Bruneau.

// ************************************************************************
//
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : SessionCreateRQ.wsdl
// >Import : SessionCreateRQ.wsdl:0
// >Import : SessionCreateRQRS.xsd
// >Import : SessionCreateRQ.xsd
// >Import : SessionCreateRS.xsd
// >Import : msg-header-2_0.xsd
// >Import : envelope.xsd
// >Import : xml.xsd
// >Import : wsse.xsd
// Encoding : UTF-8
// Codegen : [wfSkipUnusedTypes-]
// Version : 1.0
// (6/4/2007 2:47:54 PM - - $Rev: 7010 $)
// ************************************************************************
//

unit SessionCreateRQ1;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

const
IS_OPTN = $0001;
IS_UNBD = $0002;
IS_UNQL = $0008;
IS_ATTR = $0010;


type

//
************************************************************************ //
// The following types, referred to in the WSDL document are not being
represented
// in this file. They are either aliases[@] of other types represented or
were referred
// to but never[!] declared in the document. The types from the latter
category
// typically map to predefined/known XML or Borland types; however, they
could also
// indicate incorrect WSDL documents that failed to declare or import a
schema type.
//
************************************************************************ //

// !:SessionCreateRQ - "http://www.opentravel.org/OTA/2002/11"

// !:string - "http://www.w3.org/2001/XMLSchema"


// !:SessionCreateRS - "http://www.opentravel.org/OTA/2002/11"

// !:nonNegativeInteger - "http://www.w3.org/2001/XMLSchema"
// !:language - "http://www.w3.org/2001/XMLSchema"
// !:anyURI - "http://www.w3.org/2001/XMLSchema"
// !:space - "http://www.w3.org/XML/1998/namespace"

// !:MessageHeader - "http://www.ebxml.org/namespaces/messageHeader"

SessionCreateRQ = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
POS = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
Source = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
SessionCreateRS = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
Success = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
Warnings = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
Warning = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
Errors = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
Error = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
ErrorInfo = class; {
"http://www.opentravel.org/OTA/2002/11"[Cplx] }
sequenceNumber_type = class; {
"http://www.ebxml.org/namespaces/messageHeader"[!U][GblCplx] }
Security = class; {
"http://schemas.xmlsoap.org/ws/2002/12/secext"[Cplx] }
UsernameToken = class; {
"http://schemas.xmlsoap.org/ws/2002/12/secext"[Cplx] }

//
************************************************************************ //
// XML : SessionCreateRQ, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
SessionCreateRQ = class(TRemotable)
private
FPOS: POS;
public
destructor Destroy; override;
published
property POS: POS read FPOS write FPOS;
end;

//
************************************************************************ //
// XML : POS, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
POS = class(TRemotable)
private
FSource: Source;
public
destructor Destroy; override;
published
property Source: Source read FSource write FSource;
end;

//
************************************************************************ //
// XML : Source, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
Source = class(TRemotable)
private
FPseudoCityCode: WideString;
published
property PseudoCityCode: WideString Index (IS_ATTR) read
FPseudoCityCode write FPseudoCityCode;
end;

//
************************************************************************ //
// XML : SessionCreateRS, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
SessionCreateRS = class(TRemotable)
private
FEchoToken: WideString;
FEchoToken_Specified: boolean;
FTimeStamp: WideString;
FTimeStamp_Specified: boolean;
FTarget: WideString;
FTarget_Specified: boolean;
Fversion: WideString;
Fversion_Specified: boolean;
FSequenceNmbr: TXSDecimal;
FSequenceNmbr_Specified: boolean;
FPrimaryLangID: WideString;
FPrimaryLangID_Specified: boolean;
FAltLangID: WideString;
FAltLangID_Specified: boolean;
Fstatus: WideString;
Fstatus_Specified: boolean;
FSuccess: Success;
FSuccess_Specified: boolean;
FWarnings: Warnings;
FWarnings_Specified: boolean;
FConversationId: WideString;
FConversationId_Specified: boolean;
FErrors: Errors;
FErrors_Specified: boolean;
procedure SetEchoToken(Index: Integer; const AWideString: WideString);
function EchoToken_Specified(Index: Integer): boolean;
procedure SetTimeStamp(Index: Integer; const AWideString: WideString);
function TimeStamp_Specified(Index: Integer): boolean;
procedure SetTarget(Index: Integer; const AWideString: WideString);
function Target_Specified(Index: Integer): boolean;
procedure Setversion(Index: Integer; const AWideString: WideString);
function version_Specified(Index: Integer): boolean;
procedure SetSequenceNmbr(Index: Integer; const ATXSDecimal:
TXSDecimal);
function SequenceNmbr_Specified(Index: Integer): boolean;
procedure SetPrimaryLangID(Index: Integer; const AWideString:
WideString);
function PrimaryLangID_Specified(Index: Integer): boolean;
procedure SetAltLangID(Index: Integer; const AWideString: WideString);
function AltLangID_Specified(Index: Integer): boolean;
procedure Setstatus(Index: Integer; const AWideString: WideString);
function status_Specified(Index: Integer): boolean;
procedure SetSuccess(Index: Integer; const ASuccess: Success);
function Success_Specified(Index: Integer): boolean;
procedure SetWarnings(Index: Integer; const AWarnings: Warnings);
function Warnings_Specified(Index: Integer): boolean;
procedure SetConversationId(Index: Integer; const AWideString:
WideString);
function ConversationId_Specified(Index: Integer): boolean;
procedure SetErrors(Index: Integer; const AErrors: Errors);
function Errors_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property EchoToken: WideString Index (IS_ATTR or IS_OPTN) read
FEchoToken write SetEchoToken stored EchoToken_Specified;
property TimeStamp: WideString Index (IS_ATTR or IS_OPTN) read
FTimeStamp write SetTimeStamp stored TimeStamp_Specified;
property Target: WideString Index (IS_ATTR or IS_OPTN) read
FTarget write SetTarget stored Target_Specified;
property version: WideString Index (IS_ATTR or IS_OPTN) read
Fversion write Setversion stored version_Specified;
property SequenceNmbr: TXSDecimal Index (IS_ATTR or IS_OPTN) read
FSequenceNmbr write SetSequenceNmbr stored SequenceNmbr_Specified;
property PrimaryLangID: WideString Index (IS_ATTR or IS_OPTN) read
FPrimaryLangID write SetPrimaryLangID stored PrimaryLangID_Specified;
property AltLangID: WideString Index (IS_ATTR or IS_OPTN) read
FAltLangID write SetAltLangID stored AltLangID_Specified;
property status: WideString Index (IS_ATTR or IS_OPTN) read
Fstatus write Setstatus stored status_Specified;
property Success: Success Index (IS_OPTN) read FSuccess write
SetSuccess stored Success_Specified;
property Warnings: Warnings Index (IS_OPTN) read FWarnings
write SetWarnings stored Warnings_Specified;
property ConversationId: WideString Index (IS_OPTN) read
FConversationId write SetConversationId stored ConversationId_Specified;
property Errors: Errors Index (IS_OPTN) read FErrors write
SetErrors stored Errors_Specified;
end;

//
************************************************************************ //
// XML : Success, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
Success = class(TRemotable)
private
published
end;

//
************************************************************************ //
// XML : Warnings, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
Warnings = class(TRemotable)
private
FWarning: Warning;
public
destructor Destroy; override;
published
property Warning: Warning read FWarning write FWarning;
end;

//
************************************************************************ //
// XML : Warning, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
Warning = class(TRemotable)
private
FLanguage: WideString;
FLanguage_Specified: boolean;
FShortText: WideString;
FShortText_Specified: boolean;
FType_: WideString;
FType__Specified: boolean;
FCode: WideString;
FCode_Specified: boolean;
FDocURL: WideString;
FDocURL_Specified: boolean;
FStatus: WideString;
FStatus_Specified: boolean;
FTag: WideString;
FTag_Specified: boolean;
FRecordId: WideString;
FRecordId_Specified: boolean;
procedure SetLanguage(Index: Integer; const AWideString: WideString);
function Language_Specified(Index: Integer): boolean;
procedure SetShortText(Index: Integer; const AWideString: WideString);
function ShortText_Specified(Index: Integer): boolean;
procedure SetType_(Index: Integer; const AWideString: WideString);
function Type__Specified(Index: Integer): boolean;
procedure SetCode(Index: Integer; const AWideString: WideString);
function Code_Specified(Index: Integer): boolean;
procedure SetDocURL(Index: Integer; const AWideString: WideString);
function DocURL_Specified(Index: Integer): boolean;
procedure SetStatus(Index: Integer; const AWideString: WideString);
function Status_Specified(Index: Integer): boolean;
procedure SetTag(Index: Integer; const AWideString: WideString);
function Tag_Specified(Index: Integer): boolean;
procedure SetRecordId(Index: Integer; const AWideString: WideString);
function RecordId_Specified(Index: Integer): boolean;
published
property Language: WideString Index (IS_ATTR or IS_OPTN) read
FLanguage write SetLanguage stored Language_Specified;
property ShortText: WideString Index (IS_ATTR or IS_OPTN) read
FShortText write SetShortText stored ShortText_Specified;
property Type_: WideString Index (IS_ATTR or IS_OPTN) read FType_
write SetType_ stored Type__Specified;
property Code: WideString Index (IS_ATTR or IS_OPTN) read FCode
write SetCode stored Code_Specified;
property DocURL: WideString Index (IS_ATTR or IS_OPTN) read FDocURL
write SetDocURL stored DocURL_Specified;
property Status: WideString Index (IS_ATTR or IS_OPTN) read FStatus
write SetStatus stored Status_Specified;
property Tag: WideString Index (IS_ATTR or IS_OPTN) read FTag
write SetTag stored Tag_Specified;
property RecordId: WideString Index (IS_ATTR or IS_OPTN) read
FRecordId write SetRecordId stored RecordId_Specified;
end;

//
************************************************************************ //
// XML : Errors, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
Errors = class(TRemotable)
private
FError: Error;
public
destructor Destroy; override;
published
property Error: Error read FError write FError;
end;

//
************************************************************************ //
// XML : Error, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
Error = class(TRemotable)
private
FErrorCode: WideString;
FSeverity: WideString;
FErrorMessage: WideString;
FErrorInfo: ErrorInfo;
public
destructor Destroy; override;
published
property ErrorCode: WideString Index (IS_ATTR) read FErrorCode write
FErrorCode;
property Severity: WideString Index (IS_ATTR) read FSeverity write
FSeverity;
property ErrorMessage: WideString Index (IS_ATTR) read FErrorMessage
write FErrorMessage;
property ErrorInfo: ErrorInfo read FErrorInfo write FErrorInfo;
end;

//
************************************************************************ //
// XML : ErrorInfo, <complexType>
// Namespace : http://www.opentravel.org/OTA/2002/11
//
************************************************************************ //
ErrorInfo = class(TRemotable)
private
FMessage_: WideString;
published
property Message_: WideString read FMessage_ write FMessage_;
end;

//
************************************************************************ //
// XML : sequenceNumber.type, global, <complexType>
// Namespace : http://www.ebxml.org/namespaces/messageHeader
//
************************************************************************ //
sequenceNumber_type = class(TRemotable)
private
published
end;

//
************************************************************************ //
// XML : Security, <complexType>
// Namespace : http://schemas.xmlsoap.org/ws/2002/12/secext
//
************************************************************************ //
Security = class(TRemotable)
private
FUsernameToken: UsernameToken;
FUsernameToken_Specified: boolean;
FSabreAth: WideString;
FSabreAth_Specified: boolean;
FBinarySecurityToken: WideString;
FBinarySecurityToken_Specified: boolean;
procedure SetUsernameToken(Index: Integer; const AUsernameToken:
UsernameToken);
function UsernameToken_Specified(Index: Integer): boolean;
procedure SetSabreAth(Index: Integer; const AWideString: WideString);
function SabreAth_Specified(Index: Integer): boolean;
procedure SetBinarySecurityToken(Index: Integer; const AWideString:
WideString);
function BinarySecurityToken_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property UsernameToken: UsernameToken Index (IS_OPTN) read
FUsernameToken write SetUsernameToken stored UsernameToken_Specified;
property SabreAth: WideString Index (IS_OPTN) read
FSabreAth write SetSabreAth stored SabreAth_Specified;
property BinarySecurityToken: WideString Index (IS_OPTN) read
FBinarySecurityToken write SetBinarySecurityToken stored
BinarySecurityToken_Specified;
end;

Array_Of_string = array of WideString; {
"http://www.w3.org/2001/XMLSchema"[GblUbnd] }


//
************************************************************************ //
// XML : UsernameToken, <complexType>
// Namespace : http://schemas.xmlsoap.org/ws/2002/12/secext
//
************************************************************************ //
UsernameToken = class(TRemotable)
private
FUsername: WideString;
FUsername_Specified: boolean;
FPassword: WideString;
FPassword_Specified: boolean;
FNewPassword: Array_Of_string;
FNewPassword_Specified: boolean;
FOrganization: WideString;
FOrganization_Specified: boolean;
FDomain: WideString;
FDomain_Specified: boolean;
procedure SetUsername(Index: Integer; const AWideString: WideString);
function Username_Specified(Index: Integer): boolean;
procedure SetPassword(Index: Integer; const AWideString: WideString);
function Password_Specified(Index: Integer): boolean;
procedure SetNewPassword(Index: Integer; const AArray_Of_string:
Array_Of_string);
function NewPassword_Specified(Index: Integer): boolean;
procedure SetOrganization(Index: Integer; const AWideString:
WideString);
function Organization_Specified(Index: Integer): boolean;
procedure SetDomain(Index: Integer; const AWideString: WideString);
function Domain_Specified(Index: Integer): boolean;
published
property Username: WideString Index (IS_OPTN) read FUsername
write SetUsername stored Username_Specified;
property Password: WideString Index (IS_OPTN) read FPassword
write SetPassword stored Password_Specified;
property NewPassword: Array_Of_string Index (IS_OPTN or IS_UNBD) read
FNewPassword write SetNewPassword stored NewPassword_Specified;
property Organization: WideString Index (IS_OPTN or IS_UNQL) read
FOrganization write SetOrganization stored Organization_Specified;
property Domain: WideString Index (IS_OPTN or IS_UNQL) read
FDomain write SetDomain stored Domain_Specified;
end;

base = type WideString; {
"http://www.w3.org/XML/1998/namespace"[!U][GblElm] }
lang = type WideString; {
"http://www.w3.org/XML/1998/namespace"[!U][GblElm] }

//
************************************************************************ //
// Namespace : https://webservices.sabre.com/websvc
// soapAction: OTA
// transport : http://schemas.xmlsoap.org/soap/http
// style : document
// binding : SessionCreateSoapBinding
// service : SessionCreateRQService
// port : SessionCreatePortType
// URL : https://webservices.sabre.com/websvc
//
************************************************************************ //
SessionCreatePortType = interface(IInvokable)
['{69E39BBB-C7ED-DB64-81CB-D2378A9A18F7}']

// Cannot unwrap:
// - The input part is not a complex type
// - The output part is not a complex type
// Headers: header:pInOut, header2:pInOut
function SessionCreateRQ(var header: MessageHeader; var header2:
Security; const body: SessionCreateRQ): SessionCreateRS; stdcall;
end;

function GetSessionCreatePortType(UseWSDL: Boolean=System.False; Addr:
string=''; HTTPRIO: THTTPRIO = nil): SessionCreatePortType;


implementation
uses SysUtils;

function GetSessionCreatePortType(UseWSDL: Boolean; Addr: string; HTTPRIO:
THTTPRIO): SessionCreatePortType;
const
defWSDL = 'SessionCreateRQ.wsdl';
defURL = 'https://webservices.sabre.com/websvc';
defSvc = 'SessionCreateRQService';
defPrt = 'SessionCreatePortType';
var
RIO: THTTPRIO;
begin
Result := nil;
if (Addr = '') then
begin
if UseWSDL then
Addr := defWSDL
else
Addr := defURL;
end;
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil)
else
RIO := HTTPRIO;
try
Result := (RIO as SessionCreatePortType);
if UseWSDL then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result = nil) and (HTTPRIO = nil) then
RIO.Free;
end;
end;


destructor SessionCreateRQ.Destroy;
begin
FreeAndNil(FPOS);
inherited Destroy;
end;

destructor POS.Destroy;
begin
FreeAndNil(FSource);
inherited Destroy;
end;

destructor SessionCreateRS.Destroy;
begin
FreeAndNil(FSequenceNmbr);
FreeAndNil(FSuccess);
FreeAndNil(FWarnings);
FreeAndNil(FErrors);
inherited Destroy;
end;

procedure SessionCreateRS.SetEchoToken(Index: Integer; const AWideString:
WideString);
begin
FEchoToken := AWideString;
FEchoToken_Specified := True;
end;

function SessionCreateRS.EchoToken_Specified(Index: Integer): boolean;
begin
Result := FEchoToken_Specified;
end;

procedure SessionCreateRS.SetTimeStamp(Index: Integer; const AWideString:
WideString);
begin
FTimeStamp := AWideString;
FTimeStamp_Specified := True;
end;

function SessionCreateRS.TimeStamp_Specified(Index: Integer): boolean;
begin
Result := FTimeStamp_Specified;
end;

procedure SessionCreateRS.SetTarget(Index: Integer; const AWideString:
WideString);
begin
FTarget := AWideString;
FTarget_Specified := True;
end;

function SessionCreateRS.Target_Specified(Index: Integer): boolean;
begin
Result := FTarget_Specified;
end;

procedure SessionCreateRS.Setversion(Index: Integer; const AWideString:
WideString);
begin
Fversion := AWideString;
Fversion_Specified := True;
end;

function SessionCreateRS.version_Specified(Index: Integer): boolean;
begin
Result := Fversion_Specified;
end;

procedure SessionCreateRS.SetSequenceNmbr(Index: Integer; const ATXSDecimal:
TXSDecimal);
begin
FSequenceNmbr := ATXSDecimal;
FSequenceNmbr_Specified := True;
end;

function SessionCreateRS.SequenceNmbr_Specified(Index: Integer): boolean;
begin
Result := FSequenceNmbr_Specified;
end;

procedure SessionCreateRS.SetPrimaryLangID(Index: Integer; const
AWideString: WideString);
begin
FPrimaryLangID := AWideString;
FPrimaryLangID_Specified := True;
end;

function SessionCreateRS.PrimaryLangID_Specified(Index: Integer): boolean;
begin
Result := FPrimaryLangID_Specified;
end;

procedure SessionCreateRS.SetAltLangID(Index: Integer; const AWideString:
WideString);
begin
FAltLangID := AWideString;
FAltLangID_Specified := True;
end;

function SessionCreateRS.AltLangID_Specified(Index: Integer): boolean;
begin
Result := FAltLangID_Specified;
end;

procedure SessionCreateRS.Setstatus(Index: Integer; const AWideString:
WideString);
begin
Fstatus := AWideString;
Fstatus_Specified := True;
end;

function SessionCreateRS.status_Specified(Index: Integer): boolean;
begin
Result := Fstatus_Specified;
end;

procedure SessionCreateRS.SetSuccess(Index: Integer; const ASuccess:
Success);
begin
FSuccess := ASuccess;
FSuccess_Specified := True;
end;

function SessionCreateRS.Success_Specified(Index: Integer): boolean;
begin
Result := FSuccess_Specified;
end;

procedure SessionCreateRS.SetWarnings(Index: Integer; const AWarnings:
Warnings);
begin
FWarnings := AWarnings;
FWarnings_Specified := True;
end;

function SessionCreateRS.Warnings_Specified(Index: Integer): boolean;
begin
Result := FWarnings_Specified;
end;

procedure SessionCreateRS.SetConversationId(Index: Integer; const
AWideString: WideString);
begin
FConversationId := AWideString;
FConversationId_Specified := True;
end;

function SessionCreateRS.ConversationId_Specified(Index: Integer): boolean;
begin
Result := FConversationId_Specified;
end;

procedure SessionCreateRS.SetErrors(Index: Integer; const AErrors: Errors);
begin
FErrors := AErrors;
FErrors_Specified := True;
end;

function SessionCreateRS.Errors_Specified(Index: Integer): boolean;
begin
Result := FErrors_Specified;
end;

destructor Warnings.Destroy;
begin
FreeAndNil(FWarning);
inherited Destroy;
end;

procedure Warning.SetLanguage(Index: Integer; const AWideString:
WideString);
begin
FLanguage := AWideString;
FLanguage_Specified := True;
end;

function Warning.Language_Specified(Index: Integer): boolean;
begin
Result := FLanguage_Specified;
end;

procedure Warning.SetShortText(Index: Integer; const AWideString:
WideString);
begin
FShortText := AWideString;
FShortText_Specified := True;
end;

function Warning.ShortText_Specified(Index: Integer): boolean;
begin
Result := FShortText_Specified;
end;

procedure Warning.SetType_(Index: Integer; const AWideString: WideString);
begin
FType_ := AWideString;
FType__Specified := True;
end;

function Warning.Type__Specified(Index: Integer): boolean;
begin
Result := FType__Specified;
end;

procedure Warning.SetCode(Index: Integer; const AWideString: WideString);
begin
FCode := AWideString;
FCode_Specified := True;
end;

function Warning.Code_Specified(Index: Integer): boolean;
begin
Result := FCode_Specified;
end;

procedure Warning.SetDocURL(Index: Integer; const AWideString: WideString);
begin
FDocURL := AWideString;
FDocURL_Specified := True;
end;

function Warning.DocURL_Specified(Index: Integer): boolean;
begin
Result := FDocURL_Specified;
end;

procedure Warning.SetStatus(Index: Integer; const AWideString: WideString);
begin
FStatus := AWideString;
FStatus_Specified := True;
end;

function Warning.Status_Specified(Index: Integer): boolean;
begin
Result := FStatus_Specified;
end;

procedure Warning.SetTag(Index: Integer; const AWideString: WideString);
begin
FTag := AWideString;
FTag_Specified := True;
end;

function Warning.Tag_Specified(Index: Integer): boolean;
begin
Result := FTag_Specified;
end;

procedure Warning.SetRecordId(Index: Integer; const AWideString:
WideString);
begin
FRecordId := AWideString;
FRecordId_Specified := True;
end;

function Warning.RecordId_Specified(Index: Integer): boolean;
begin
Result := FRecordId_Specified;
end;

destructor Errors.Destroy;
begin
FreeAndNil(FError);
inherited Destroy;
end;

destructor Error.Destroy;
begin
FreeAndNil(FErrorInfo);
inherited Destroy;
end;

destructor Security.Destroy;
begin
FreeAndNil(FUsernameToken);
inherited Destroy;
end;

procedure Security.SetUsernameToken(Index: Integer; const AUsernameToken:
UsernameToken);
begin
FUsernameToken := AUsernameToken;
FUsernameToken_Specified := True;
end;

function Security.UsernameToken_Specified(Index: Integer): boolean;
begin
Result := FUsernameToken_Specified;
end;

procedure Security.SetSabreAth(Index: Integer; const AWideString:
WideString);
begin
FSabreAth := AWideString;
FSabreAth_Specified := True;
end;

function Security.SabreAth_Specified(Index: Integer): boolean;
begin
Result := FSabreAth_Specified;
end;

procedure Security.SetBinarySecurityToken(Index: Integer; const AWideString:
WideString);
begin
FBinarySecurityToken := AWideString;
FBinarySecurityToken_Specified := True;
end;

function Security.BinarySecurityToken_Specified(Index: Integer): boolean;
begin
Result := FBinarySecurityToken_Specified;
end;

procedure UsernameToken.SetUsername(Index: Integer; const AWideString:
WideString);
begin
FUsername := AWideString;
FUsername_Specified := True;
end;

function UsernameToken.Username_Specified(Index: Integer): boolean;
begin
Result := FUsername_Specified;
end;

procedure UsernameToken.SetPassword(Index: Integer; const AWideString:
WideString);
begin
FPassword := AWideString;
FPassword_Specified := True;
end;

function UsernameToken.Password_Specified(Index: Integer): boolean;
begin
Result := FPassword_Specified;
end;

procedure UsernameToken.SetNewPassword(Index: Integer; const
AArray_Of_string: Array_Of_string);
begin
FNewPassword := AArray_Of_string;
FNewPassword_Specified := True;
end;

function UsernameToken.NewPassword_Specified(Index: Integer): boolean;
begin
Result := FNewPassword_Specified;
end;

procedure UsernameToken.SetOrganization(Index: Integer; const AWideString:
WideString);
begin
FOrganization := AWideString;
FOrganization_Specified := True;
end;

function UsernameToken.Organization_Specified(Index: Integer): boolean;
begin
Result := FOrganization_Specified;
end;

procedure UsernameToken.SetDomain(Index: Integer; const AWideString:
WideString);
begin
FDomain := AWideString;
FDomain_Specified := True;
end;

function UsernameToken.Domain_Specified(Index: Integer): boolean;
begin
Result := FDomain_Specified;
end;

initialization
InvRegistry.RegisterInterface(TypeInfo(SessionCreatePortType),
'https://webservices.sabre.com/websvc', 'UTF-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(SessionCreatePortType),
'OTA');
InvRegistry.RegisterReturnParamNames(TypeInfo(SessionCreatePortType),
'body');
InvRegistry.RegisterInvokeOptions(TypeInfo(SessionCreatePortType),
ioDocument);
InvRegistry.RegisterInvokeOptions(TypeInfo(SessionCreatePortType),
ioLiteral);
InvRegistry.RegisterHeaderClass(TypeInfo(SessionCreatePortType),
MessageHeader, 'header', 'http://www.ebxml.org/namespaces/messageHeader');
InvRegistry.RegisterHeaderClass(TypeInfo(SessionCreatePortType), Security,
'header2', 'http://schemas.xmlsoap.org/ws/2002/12/secext');
InvRegistry.RegisterExternalParamName(TypeInfo(SessionCreatePortType),
'SessionCreateRQ', 'body1', 'body');
RemClassRegistry.RegisterXSClass(SessionCreateRQ,
'http://www.opentravel.org/OTA/2002/11', 'SessionCreateRQ');
RemClassRegistry.RegisterXSClass(POS,
'http://www.opentravel.org/OTA/2002/11', 'POS');
RemClassRegistry.RegisterXSClass(Source,
'http://www.opentravel.org/OTA/2002/11', 'Source');
RemClassRegistry.RegisterXSClass(SessionCreateRS,
'http://www.opentravel.org/OTA/2002/11', 'SessionCreateRS');
RemClassRegistry.RegisterXSClass(Success,
'http://www.opentravel.org/OTA/2002/11', 'Success');
RemClassRegistry.RegisterXSClass(Warnings,
'http://www.opentravel.org/OTA/2002/11', 'Warnings');
RemClassRegistry.RegisterXSClass(Warning,
'http://www.opentravel.org/OTA/2002/11', 'Warning');
RemClassRegistry.RegisterExternalPropName(TypeInfo(Warning), 'Type_',
'Type');
RemClassRegistry.RegisterXSClass(Errors,
'http://www.opentravel.org/OTA/2002/11', 'Errors');
RemClassRegistry.RegisterXSClass(Error,
'http://www.opentravel.org/OTA/2002/11', 'Error');
RemClassRegistry.RegisterXSClass(ErrorInfo,
'http://www.opentravel.org/OTA/2002/11', 'ErrorInfo');
RemClassRegistry.RegisterExternalPropName(TypeInfo(ErrorInfo), 'Message_',
'Message');
RemClassRegistry.RegisterXSClass(sequenceNumber_type,
'http://www.ebxml.org/namespaces/messageHeader', 'sequenceNumber_type',
'sequenceNumber.type');
RemClassRegistry.RegisterXSClass(Security,
'http://schemas.xmlsoap.org/ws/2002/12/secext', 'Security');
RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_string),
'http://www.w3.org/2001/XMLSchema', 'Array_Of_string');
RemClassRegistry.RegisterXSClass(UsernameToken,
'http://schemas.xmlsoap.org/ws/2002/12/secext', 'UsernameToken');
RemClassRegistry.RegisterXSInfo(TypeInfo(base),
'http://www.w3.org/XML/1998/namespace', 'base');
RemClassRegistry.RegisterXSInfo(TypeInfo(lang),
'http://www.w3.org/XML/1998/namespace', 'lang');

end.


0 new messages