You've already forked lazarus-ccr
fix TAbstractSimpleRemotable serialization ( test case )
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@868 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -26,6 +26,9 @@ uses
|
|||||||
TypInfo,
|
TypInfo,
|
||||||
test_suite_utils, base_service_intf, wst_types, server_service_intf, service_intf;
|
test_suite_utils, base_service_intf, wst_types, server_service_intf, service_intf;
|
||||||
|
|
||||||
|
const
|
||||||
|
TEST_NAME_SPACE = 'uri:test-namespace';
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
TTestEnum = ( teOne, teTwo, teThree, teFour );
|
TTestEnum = ( teOne, teTwo, teThree, teFour );
|
||||||
@ -39,12 +42,16 @@ type
|
|||||||
private
|
private
|
||||||
FVal_32S: LongInt;
|
FVal_32S: LongInt;
|
||||||
FVal_Bool: Boolean;
|
FVal_Bool: Boolean;
|
||||||
|
FVal_Date: TDateRemotable;
|
||||||
FVal_Enum: TTestEnum;
|
FVal_Enum: TTestEnum;
|
||||||
FVal_String: string;
|
FVal_String: string;
|
||||||
{$IFDEF WST_UNICODESTRING}
|
{$IFDEF WST_UNICODESTRING}
|
||||||
FVal_UnicodeString: UnicodeString;
|
FVal_UnicodeString: UnicodeString;
|
||||||
{$ENDIF WST_UNICODESTRING}
|
{$ENDIF WST_UNICODESTRING}
|
||||||
FVal_WideString: WideString;
|
FVal_WideString: WideString;
|
||||||
|
public
|
||||||
|
constructor Create();override;
|
||||||
|
destructor Destroy();override;
|
||||||
Published
|
Published
|
||||||
property Val_32S : LongInt Read FVal_32S Write FVal_32S;
|
property Val_32S : LongInt Read FVal_32S Write FVal_32S;
|
||||||
property Val_Enum : TTestEnum Read FVal_Enum Write FVal_Enum;
|
property Val_Enum : TTestEnum Read FVal_Enum Write FVal_Enum;
|
||||||
@ -54,6 +61,7 @@ type
|
|||||||
{$IFDEF WST_UNICODESTRING}
|
{$IFDEF WST_UNICODESTRING}
|
||||||
property Val_UnicodeString : UnicodeString Read FVal_UnicodeString Write FVal_UnicodeString;
|
property Val_UnicodeString : UnicodeString Read FVal_UnicodeString Write FVal_UnicodeString;
|
||||||
{$ENDIF WST_UNICODESTRING}
|
{$ENDIF WST_UNICODESTRING}
|
||||||
|
property Val_Date : TDateRemotable read FVal_Date write FVal_Date;
|
||||||
End;
|
End;
|
||||||
|
|
||||||
TClass_A_Array = class(TBaseObjectArrayRemotable)
|
TClass_A_Array = class(TBaseObjectArrayRemotable)
|
||||||
@ -553,9 +561,15 @@ type
|
|||||||
class function GetFormaterName() : string;override;
|
class function GetFormaterName() : string;override;
|
||||||
class function SupportNamedArrayItem() : Boolean;override;
|
class function SupportNamedArrayItem() : Boolean;override;
|
||||||
function CreateFormatter(ARootType : PTypeInfo):IFormatterBase;override;
|
function CreateFormatter(ARootType : PTypeInfo):IFormatterBase;override;
|
||||||
|
procedure do_test_Object(const AProps, AFileName : string);
|
||||||
published
|
published
|
||||||
procedure test_WriteBuffer();
|
procedure test_WriteBuffer();
|
||||||
procedure test_ReadBuffer();
|
procedure test_ReadBuffer();
|
||||||
|
|
||||||
|
procedure test_Object_DocumentLiteral();
|
||||||
|
procedure test_Object_DocumentEncoded();
|
||||||
|
procedure test_Object_RPCLiteral();
|
||||||
|
procedure test_Object_RPCEncoded();
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TTestSOAPFormatterAttributes }
|
{ TTestSOAPFormatterAttributes }
|
||||||
@ -671,8 +685,7 @@ uses base_binary_formatter, base_soap_formatter, base_xmlrpc_formatter, record_r
|
|||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
, server_service_soap, soap_formatter,
|
, server_service_soap, soap_formatter,
|
||||||
server_service_xmlrpc, xmlrpc_formatter,
|
server_service_xmlrpc, xmlrpc_formatter,
|
||||||
binary_streamer, server_binary_formatter, binary_formatter,
|
binary_streamer, server_binary_formatter, binary_formatter;
|
||||||
object_serializer;
|
|
||||||
|
|
||||||
function CompareNodes(const A,B : PDataBuffer) : Boolean;overload;forward;
|
function CompareNodes(const A,B : PDataBuffer) : Boolean;overload;forward;
|
||||||
|
|
||||||
@ -717,7 +730,7 @@ var
|
|||||||
ok : Boolean;
|
ok : Boolean;
|
||||||
begin
|
begin
|
||||||
if ( A = nil ) and ( B = nil ) then begin
|
if ( A = nil ) and ( B = nil ) then begin
|
||||||
Result := ok
|
Result := True
|
||||||
end else if ( A <> nil ) and ( B <> nil ) then begin
|
end else if ( A <> nil ) and ( B <> nil ) then begin
|
||||||
if ( A^.Count = B^.Count ) then begin
|
if ( A^.Count = B^.Count ) then begin
|
||||||
ok := True;
|
ok := True;
|
||||||
@ -2606,8 +2619,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestFormatter.Test_CplxFloatExtendedSimpleContent_WithClass;
|
procedure TTestFormatter.Test_CplxFloatExtendedSimpleContent_WithClass;
|
||||||
const VAL_S : Extended = -12.10; VAL_U : Double = 10.76; VAL_X = 1210.76;
|
const VAL_S : Extended = -12.10; VAL_U : Double = 10.76;
|
||||||
VAL_STR_S = 'Test Attribute S'; VAL_STR_U = 'Test Attribute U'; VAL_STR_X = 'test it';
|
|
||||||
var
|
var
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
@ -2875,6 +2887,8 @@ end;
|
|||||||
{$ENDIF WST_UNICODESTRING}
|
{$ENDIF WST_UNICODESTRING}
|
||||||
|
|
||||||
procedure TTestFormatter.Test_Object();
|
procedure TTestFormatter.Test_Object();
|
||||||
|
const
|
||||||
|
DATE_VALUE = 39000;
|
||||||
Var
|
Var
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
@ -2893,6 +2907,7 @@ begin
|
|||||||
{$ENDIF WST_UNICODESTRING}
|
{$ENDIF WST_UNICODESTRING}
|
||||||
a.ObjProp.Val_String := '456';
|
a.ObjProp.Val_String := '456';
|
||||||
a.ObjProp.Val_WideString := 'wide456';
|
a.ObjProp.Val_WideString := 'wide456';
|
||||||
|
a.ObjProp.Val_Date.AsDate := DATE_VALUE;
|
||||||
{$IFDEF WST_UNICODESTRING}
|
{$IFDEF WST_UNICODESTRING}
|
||||||
a.ObjProp.Val_UnicodeString := 'unicode456';
|
a.ObjProp.Val_UnicodeString := 'unicode456';
|
||||||
{$ENDIF WST_UNICODESTRING}
|
{$ENDIF WST_UNICODESTRING}
|
||||||
@ -2933,6 +2948,7 @@ begin
|
|||||||
CheckEquals(Ord(teFour),Ord(a.ObjProp.Val_Enum));
|
CheckEquals(Ord(teFour),Ord(a.ObjProp.Val_Enum));
|
||||||
CheckEquals('456',a.ObjProp.Val_String);
|
CheckEquals('456',a.ObjProp.Val_String);
|
||||||
CheckEquals(WideString('wide456'),a.ObjProp.Val_WideString);
|
CheckEquals(WideString('wide456'),a.ObjProp.Val_WideString);
|
||||||
|
CheckEquals(TDateRemotable.FormatDate(DATE_VALUE),TDateRemotable.FormatDate(a.ObjProp.Val_Date.AsDate));
|
||||||
{$IFDEF WST_UNICODESTRING}
|
{$IFDEF WST_UNICODESTRING}
|
||||||
CheckEquals('unicode456',a.ObjProp.Val_UnicodeString);
|
CheckEquals('unicode456',a.ObjProp.Val_UnicodeString);
|
||||||
{$ENDIF WST_UNICODESTRING}
|
{$ENDIF WST_UNICODESTRING}
|
||||||
@ -3968,7 +3984,6 @@ const AR_LEN = 5;
|
|||||||
end;
|
end;
|
||||||
var
|
var
|
||||||
a, areaded : TClass_A_Array;
|
a, areaded : TClass_A_Array;
|
||||||
aitem : TClass_A;
|
|
||||||
i : Integer;
|
i : Integer;
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
@ -4016,8 +4031,6 @@ end;
|
|||||||
procedure TTestFormatter.Test_ObjectArray_ReadEmptyArray();
|
procedure TTestFormatter.Test_ObjectArray_ReadEmptyArray();
|
||||||
var
|
var
|
||||||
a, areaded : TClass_A_Array;
|
a, areaded : TClass_A_Array;
|
||||||
aitem : TClass_A;
|
|
||||||
i : Integer;
|
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
x : string;
|
x : string;
|
||||||
@ -4148,7 +4161,6 @@ const AR_LEN = 5;
|
|||||||
end;
|
end;
|
||||||
var
|
var
|
||||||
a, areaded : TClass_A_Collection;
|
a, areaded : TClass_A_Collection;
|
||||||
aitem : TClass_A;
|
|
||||||
i : Integer;
|
i : Integer;
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
@ -4248,8 +4260,6 @@ end;
|
|||||||
procedure TTestFormatter.Test_ObjectCollection_ReadEmptyCollection();
|
procedure TTestFormatter.Test_ObjectCollection_ReadEmptyCollection();
|
||||||
var
|
var
|
||||||
a, areaded : TClass_A_Collection;
|
a, areaded : TClass_A_Collection;
|
||||||
aitem : TClass_A;
|
|
||||||
i : Integer;
|
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
x : string;
|
x : string;
|
||||||
@ -4303,8 +4313,6 @@ end;
|
|||||||
procedure TTestFormatter.Test_SimpleTypeArray_ReadEmptyArray();
|
procedure TTestFormatter.Test_SimpleTypeArray_ReadEmptyArray();
|
||||||
var
|
var
|
||||||
a, areaded : TArrayOfStringRemotable;
|
a, areaded : TArrayOfStringRemotable;
|
||||||
aitem : TClass_A;
|
|
||||||
i : Integer;
|
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
s : TMemoryStream;
|
s : TMemoryStream;
|
||||||
x : string;
|
x : string;
|
||||||
@ -4590,7 +4598,7 @@ begin
|
|||||||
Check( ls.IndexOf('intv') >= 0 );
|
Check( ls.IndexOf('intv') >= 0 );
|
||||||
x := 'a';
|
x := 'a';
|
||||||
f.BeginObjectRead(x,TypeInfo(TClass_A));
|
f.BeginObjectRead(x,TypeInfo(TClass_A));
|
||||||
CheckEquals(5{$IFDEF WST_UNICODESTRING}+1{$ENDIF}, f.GetScopeItemNames(ls), 'GetScopeItemNames.Count(a)');
|
CheckEquals(6{$IFDEF WST_UNICODESTRING}+1{$ENDIF}, f.GetScopeItemNames(ls), 'GetScopeItemNames.Count(a)');
|
||||||
Check( ls.IndexOf('Val_Bool') >= 0 );
|
Check( ls.IndexOf('Val_Bool') >= 0 );
|
||||||
Check( ls.IndexOf('Val_Enum') >= 0 );
|
Check( ls.IndexOf('Val_Enum') >= 0 );
|
||||||
Check( ls.IndexOf('Val_String') >= 0 );
|
Check( ls.IndexOf('Val_String') >= 0 );
|
||||||
@ -4599,7 +4607,7 @@ begin
|
|||||||
|
|
||||||
x := 'b';
|
x := 'b';
|
||||||
f.BeginObjectRead(x,TypeInfo(TClass_A));
|
f.BeginObjectRead(x,TypeInfo(TClass_A));
|
||||||
CheckEquals(5{$IFDEF WST_UNICODESTRING}+1{$ENDIF}, f.GetScopeItemNames(ls), 'GetScopeItemNames.Count(b)');
|
CheckEquals(6{$IFDEF WST_UNICODESTRING}+1{$ENDIF}, f.GetScopeItemNames(ls), 'GetScopeItemNames.Count(b)');
|
||||||
Check( ls.IndexOf('Val_Bool') >= 0 );
|
Check( ls.IndexOf('Val_Bool') >= 0 );
|
||||||
Check( ls.IndexOf('Val_Enum') >= 0 );
|
Check( ls.IndexOf('Val_Enum') >= 0 );
|
||||||
Check( ls.IndexOf('Val_String') >= 0 );
|
Check( ls.IndexOf('Val_String') >= 0 );
|
||||||
@ -4685,6 +4693,85 @@ begin
|
|||||||
Result.BeginObject('Env',ARootType)
|
Result.BeginObject('Env',ARootType)
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TTestSOAPFormatter.do_test_Object(const AProps, AFilename: string);
|
||||||
|
const
|
||||||
|
DATE_VALUE = 39000;
|
||||||
|
Var
|
||||||
|
f : IFormatterBase;
|
||||||
|
s : TMemoryStream;
|
||||||
|
a : TClass_B;
|
||||||
|
x : string;
|
||||||
|
begin
|
||||||
|
s := Nil;
|
||||||
|
a := TClass_B.Create();
|
||||||
|
Try
|
||||||
|
a.Val_Bool := False;
|
||||||
|
a.Val_Enum := teThree;
|
||||||
|
a.Val_String := '123';
|
||||||
|
a.Val_WideString := 'wide123';
|
||||||
|
{$IFDEF WST_UNICODESTRING}
|
||||||
|
a.Val_UnicodeString := 'unicode123';
|
||||||
|
{$ENDIF WST_UNICODESTRING}
|
||||||
|
a.ObjProp.Val_String := '456';
|
||||||
|
a.ObjProp.Val_WideString := 'wide456';
|
||||||
|
a.ObjProp.Val_Date.AsDate := DATE_VALUE;
|
||||||
|
{$IFDEF WST_UNICODESTRING}
|
||||||
|
a.ObjProp.Val_UnicodeString := 'unicode456';
|
||||||
|
{$ENDIF WST_UNICODESTRING}
|
||||||
|
a.ObjProp.Val_Enum := teFour;
|
||||||
|
a.ObjProp.Val_Bool := True;
|
||||||
|
a.ObjProp.Val_32S := 121076;
|
||||||
|
a.NonStored := 121076;
|
||||||
|
|
||||||
|
f := CreateFormatter(TypeInfo(TClass_B));
|
||||||
|
f.GetPropertyManager().SetProperties(AProps);
|
||||||
|
|
||||||
|
f.BeginObject('Root',TypeInfo(TClass_B));
|
||||||
|
f.Put('o1',TypeInfo(TClass_B),a);
|
||||||
|
f.EndScope();
|
||||||
|
|
||||||
|
s := TMemoryStream.Create();
|
||||||
|
f.SaveToStream(s);
|
||||||
|
FreeAndNil(a);
|
||||||
|
//if not IsStrEmpty(AFilename) then
|
||||||
|
//s.SaveToFile(wstExpandLocalFileName(AFilename));
|
||||||
|
|
||||||
|
a := TClass_B.Create();
|
||||||
|
f := CreateFormatter(TypeInfo(TClass_B));
|
||||||
|
f.GetPropertyManager().SetProperties(AProps);
|
||||||
|
s.Position := 0;
|
||||||
|
f.LoadFromStream(s);
|
||||||
|
x := 'Root';
|
||||||
|
f.BeginObjectRead(x,TypeInfo(TClass_B));
|
||||||
|
x := 'o1';
|
||||||
|
f.Get(TypeInfo(TClass_B),x,a);
|
||||||
|
f.EndScopeRead();
|
||||||
|
|
||||||
|
CheckEquals(False,a.Val_Bool);
|
||||||
|
CheckEquals(Ord(teThree),Ord(a.Val_Enum));
|
||||||
|
CheckEquals('123',a.Val_String);
|
||||||
|
CheckEquals(WideString('wide123'),a.Val_WideString);
|
||||||
|
{$IFDEF WST_UNICODESTRING}
|
||||||
|
CheckEquals('unicode123',a.Val_UnicodeString);
|
||||||
|
{$ENDIF WST_UNICODESTRING}
|
||||||
|
|
||||||
|
CheckEquals(True,a.ObjProp.Val_Bool);
|
||||||
|
CheckEquals(Ord(teFour),Ord(a.ObjProp.Val_Enum));
|
||||||
|
CheckEquals('456',a.ObjProp.Val_String);
|
||||||
|
CheckEquals(WideString('wide456'),a.ObjProp.Val_WideString);
|
||||||
|
CheckEquals(TDateRemotable.FormatDate(DATE_VALUE),TDateRemotable.FormatDate(a.ObjProp.Val_Date.AsDate));
|
||||||
|
{$IFDEF WST_UNICODESTRING}
|
||||||
|
CheckEquals('unicode456',a.ObjProp.Val_UnicodeString);
|
||||||
|
{$ENDIF WST_UNICODESTRING}
|
||||||
|
CheckEquals(121076,a.ObjProp.Val_32S);
|
||||||
|
|
||||||
|
CheckEquals(0,a.NonStored);
|
||||||
|
Finally
|
||||||
|
a.Free();
|
||||||
|
s.Free();
|
||||||
|
End;
|
||||||
|
end;
|
||||||
|
|
||||||
class function TTestSOAPFormatter.GetFormaterName(): string;
|
class function TTestSOAPFormatter.GetFormaterName(): string;
|
||||||
begin
|
begin
|
||||||
Result := 'SOAP';
|
Result := 'SOAP';
|
||||||
@ -4755,25 +4842,24 @@ procedure TTestSOAPFormatter.test_ReadBuffer();
|
|||||||
const
|
const
|
||||||
{$IFDEF FPC}
|
{$IFDEF FPC}
|
||||||
s_XML_BUFFER : AnsiString =
|
s_XML_BUFFER : AnsiString =
|
||||||
'<ns2:ObjProperty> ' +
|
'<ns1:ObjProperty> ' +
|
||||||
' <ns2:fieldSmallint>1</ns2:fieldSmallint> ' +
|
' <ns1:fieldSmallint>1</ns1:fieldSmallint> ' +
|
||||||
' <ns2:fieldWord>0</ns2:fieldWord> ' +
|
' <ns1:fieldWord>0</ns1:fieldWord> ' +
|
||||||
' <ns2:fieldString>SampleStringContent</ns2:fieldString> ' +
|
' <ns1:fieldString>SampleStringContent</ns1:fieldString> ' +
|
||||||
'</ns2:ObjProperty>';
|
'</ns1:ObjProperty>';
|
||||||
{$ENDIF FPC}
|
{$ENDIF FPC}
|
||||||
{$IFDEF DELPHI}
|
{$IFDEF DELPHI}
|
||||||
s_XML_BUFFER : AnsiString =
|
s_XML_BUFFER : AnsiString =
|
||||||
'<ns2:ObjProperty xmlns:ns2uri:testnamespace> ' +
|
'<ns1:ObjProperty xmlns:ns2uri:testnamespace> ' +
|
||||||
' <ns2:fieldSmallint>1</ns2:fieldSmallint> ' +
|
' <ns1:fieldSmallint>1</ns1:fieldSmallint> ' +
|
||||||
' <ns2:fieldWord>0</ns2:fieldWord> ' +
|
' <ns1:fieldWord>0</ns1:fieldWord> ' +
|
||||||
' <ns2:fieldString>SampleStringContent</ns2:fieldString> ' +
|
' <ns1:fieldString>SampleStringContent</ns1:fieldString> ' +
|
||||||
'</ns2:ObjProperty>';
|
'</ns1:ObjProperty>';
|
||||||
{$ENDIF DELPHI}
|
{$ENDIF DELPHI}
|
||||||
|
|
||||||
var
|
var
|
||||||
f : IFormatterBase;
|
f : IFormatterBase;
|
||||||
strm : TMemoryStream;
|
strm : TMemoryStream;
|
||||||
da, db : TXMLDocument;
|
|
||||||
obj2 : TTestSmallClass2;
|
obj2 : TTestSmallClass2;
|
||||||
obj : TTestSmallClass;
|
obj : TTestSmallClass;
|
||||||
strName, strBuffer : string;
|
strName, strBuffer : string;
|
||||||
@ -4815,6 +4901,26 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TTestSOAPFormatter.test_Object_DocumentLiteral();
|
||||||
|
begin
|
||||||
|
do_test_Object('Style=Document;EncodingStyle=Literal','test_Object_DocumentLiteral.xml');
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TTestSOAPFormatter.test_Object_DocumentEncoded();
|
||||||
|
begin
|
||||||
|
do_test_Object('Style=Document;EncodingStyle=Encoded','test_Object_DocumentEncoded.xml');
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TTestSOAPFormatter.test_Object_RPCLiteral();
|
||||||
|
begin
|
||||||
|
do_test_Object('Style=RPC;EncodingStyle=Literal','test_Object_RPCLiteral.xml');
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TTestSOAPFormatter.test_Object_RPCEncoded();
|
||||||
|
begin
|
||||||
|
do_test_Object('Style=RPC;EncodingStyle=Encoded','test_Object_RPCEncoded.xml');
|
||||||
|
end;
|
||||||
|
|
||||||
{ TClass_A_Array }
|
{ TClass_A_Array }
|
||||||
|
|
||||||
function TClass_A_Array.GetItem(AIndex: Integer): TClass_A;
|
function TClass_A_Array.GetItem(AIndex: Integer): TClass_A;
|
||||||
@ -6070,33 +6176,47 @@ end;
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{ TClass_A }
|
||||||
|
|
||||||
|
constructor TClass_A.Create();
|
||||||
|
begin
|
||||||
|
inherited Create();
|
||||||
|
FVal_Date := TDateRemotable.Create();
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TClass_A.Destroy();
|
||||||
|
begin
|
||||||
|
FreeAndNil(FVal_Date);
|
||||||
|
inherited Destroy();
|
||||||
|
end;
|
||||||
|
|
||||||
initialization
|
initialization
|
||||||
RegisterStdTypes();
|
RegisterStdTypes();
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TTestEnum),'TTestEnum').RegisterExternalPropertyName('teOne', '1');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TTestEnum),'TTestEnum').RegisterExternalPropertyName('teOne', '1');
|
||||||
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TTestEnum)].RegisterExternalPropertyName('teThree', 'Three-external-name');
|
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TTestEnum)].RegisterExternalPropertyName('teThree', 'Three-external-name');
|
||||||
|
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_Int),'TClass_Int').RegisterExternalPropertyName('Val_8U','U8');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_Int),'TClass_Int').RegisterExternalPropertyName('Val_8U','U8');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_Enum),'TClass_Enum');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_Enum),'TClass_Enum');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_A),'TClass_A');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_A),'TClass_A');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_A_Array),'TClass_A_Array');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_A_Array),'TClass_A_Array');
|
||||||
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TClass_A_Array)].RegisterExternalPropertyName(sARRAY_ITEM,'ArrayItem');
|
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TClass_A_Array)].RegisterExternalPropertyName(sARRAY_ITEM,'ArrayItem');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_A_Collection),'TClass_A_Collection');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_A_Collection),'TClass_A_Collection');
|
||||||
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TClass_A_Collection)].RegisterExternalPropertyName(sARRAY_ITEM,'Item');
|
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TClass_A_Collection)].RegisterExternalPropertyName(sARRAY_ITEM,'Item');
|
||||||
|
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_B),'TClass_B');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_B),'TClass_B');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_Float),'TClass_Float');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_Float),'TClass_Float');
|
||||||
|
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(T_ComplexInt32SContent),'T_ComplexInt32SContent');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(T_ComplexInt32SContent),'T_ComplexInt32SContent');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(T_ComplexInt32UContent),'T_ComplexInt32UContent');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(T_ComplexInt32UContent),'T_ComplexInt32UContent');
|
||||||
|
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(T_ComplexInt16SContent),'T_ComplexInt16SContent');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(T_ComplexInt16SContent),'T_ComplexInt16SContent');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(T_ComplexInt16UContent),'T_ComplexInt16UContent');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(T_ComplexInt16UContent),'T_ComplexInt16UContent');
|
||||||
|
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(T_ComplexFloatExtendedContent),'T_ComplexFloatExtendedContent');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(T_ComplexFloatExtendedContent),'T_ComplexFloatExtendedContent');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(T_ComplexFloatDoubleContent),'T_ComplexFloatDoubleContent');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(T_ComplexFloatDoubleContent),'T_ComplexFloatDoubleContent');
|
||||||
|
|
||||||
TClass_CplxSimpleContent.RegisterAttributeProperty('Elt_Exemple');
|
TClass_CplxSimpleContent.RegisterAttributeProperty('Elt_Exemple');
|
||||||
GetTypeRegistry().Register(sXSD_NS,TypeInfo(TClass_CplxSimpleContent),'TClass_CplxSimpleContent').RegisterExternalPropertyName('Elt_Exemple', 'published');
|
GetTypeRegistry().Register(TEST_NAME_SPACE,TypeInfo(TClass_CplxSimpleContent),'TClass_CplxSimpleContent').RegisterExternalPropertyName('Elt_Exemple', 'published');
|
||||||
|
|
||||||
with GetTypeRegistry().Register(sWST_BASE_NS,TypeInfo(TEmbeddedArrayOfStringRemotable),'TEmbeddedArrayOfStringRemotable') do begin
|
with GetTypeRegistry().Register(sWST_BASE_NS,TypeInfo(TEmbeddedArrayOfStringRemotable),'TEmbeddedArrayOfStringRemotable') do begin
|
||||||
RegisterExternalPropertyName(sARRAY_ITEM,'abc');
|
RegisterExternalPropertyName(sARRAY_ITEM,'abc');
|
||||||
|
Reference in New Issue
Block a user