Commit Graph

153 Commits

Author SHA1 Message Date
inoussa
5a497d957a Part 2
FPC UnicodeString support (+ test cases)
WideString support (+ test cases)

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@556 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-13 15:19:20 +00:00
inoussa
5918607ca5 Fix memory leak in xsd parser ( TPropInfoReferenceList should free its items )
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@554 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-11 17:53:43 +00:00
inoussa
5276962d02 Fix empty complexType parsing
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@552 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-11 02:12:27 +00:00
inoussa
bc4dd0ba39 Part 2
* simple content header block implementation : TSimpleContentHeaderBlock
  * XSD/WSDL generator tests : header, simple content header, collection

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@550 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-11 00:42:54 +00:00
inoussa
5dac536065 proxy generator : store the call context into a local variable and use it instead of casting "self" to ICallContext, suggested by MVC ( FPC team )
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@548 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-10 16:02:05 +00:00
inoussa
7240986847 part 1
wsdl function "result" part is determined now as ( in order and stops when ok ) :
  * "result" part
  * "return" part
  * "_result" part
  * "result_" part
  * "_return" part
  * "return_" part
  * the last part

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@546 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-10 01:46:45 +00:00
inoussa
3c301358b4 overloaded routines for testability
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@540 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-09-06 15:54:34 +00:00
inoussa
d8690785ba Define TBinaryString ( = ansistring ) and use it in base64 BinaryData
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@532 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-08-18 19:04:16 +00:00
inoussa
7a5a5c150b Documentation handling in wsdl/xsd editing and parsing :
+ main windows of the Type Library Editor now has, for the select item, a document view, xsd view and a dependencies view
 + each type edit dialog now has, for the select item, a document view, xsd view and a dependencies view
 + the interface file generator is able to generate the xsd documentation as comments in the Object Pascal source code

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@531 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-08-18 18:19:00 +00:00
inoussa
97f4b386da fpc 2.2.0 compatibility fix
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@523 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-08-07 00:44:09 +00:00
inoussa
639bde5376 +Object Collection support
All WST custom attributes are now namespace qualified
Correct XDS generator for complex type extending simple type

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@520 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-08-01 21:38:55 +00:00
inoussa
c8ea997a2b Wrapped parameter generation fix
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@505 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-07-03 16:42:26 +00:00
inoussa
e6599ad9f8 Document wrapped parameters handling : generation of an easy access interface
that expose simpler parameters. 
see ws_helper -y commute

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@503 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-07-03 16:15:03 +00:00
inoussa
4b8de601a1 various IDE update
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@493 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-06-26 15:14:39 +00:00
inoussa
79abba7d4b No longer needed
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@492 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-06-26 15:12:37 +00:00
inoussa
a2c31b16a1 Handling of an enumeration with an empty item ( reported by Michael Van Canneyt )
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@491 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-06-26 15:06:00 +00:00
inoussa
aa9c003b61 Allow customization of namespace alias
Properties's extended metadata
Add Option to not generate embedded arrays
code cleaning

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@465 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-06-06 14:59:24 +00:00
inoussa
1dc0744989 Correct an AV bug and drop a non-used method
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@464 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-06-06 14:49:11 +00:00
inoussa
4ac8b874cf json serialization : client & server
base64 encoded support + tests
new tests for schema parsers : complex type extending simple type

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@303 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-12-29 00:58:19 +00:00
inoussa
a53b4f1c6e typ_lib_edtr bug fix
more tests and fix
Delphi GUI DUnit test suite runer 

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@292 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-12-19 23:31:52 +00:00
inoussa
343b11db66 wsdl parser : assume style=document binding if not specified
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@277 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-10-19 15:30:20 +00:00
inoussa
dc2b1b55c0 xsd generator
wsdl generator

xsd & wsdl parser test : embedded record

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@269 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-09-16 00:31:45 +00:00
inoussa
e7786c75b4 xsd parser tests suite :
- array test
 - record test

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@266 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-09-10 22:19:20 +00:00
inoussa
1c633e091d wsdl2pas_imp.pas has been reorganized :
- xsd_parser.pas XML schema parser
  - wsdl_parser.pas WSDL parser ( uses xsd_parser to parse type definitions )

ws_helper now supports XML Schema ( .XSD files ) parsing.

test cases for XSD and WSDL parsers

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@264 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-09-09 22:30:50 +00:00
inoussa
77e718ba57 Delphi compiles ws_helper ( omitted file )
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@256 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-09-02 19:52:25 +00:00
inoussa
95fb7fb08f Delphi compiles ws_helper
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@254 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-09-02 19:05:47 +00:00
inoussa
a670b3cc11 Record definition partialy supported in Type Library Editor
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@245 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-08-21 22:14:13 +00:00
inoussa
11a897fc26 Object Pascal "record" serialization ( first commit! )
TTest_TIntfPoolItem
TTest_TSimpleItemFactory
TTest_XmlRpcFormatterExceptionBlock
TTest_SoapFormatterExceptionBlock
Record serialization test

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@243 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-08-19 00:29:43 +00:00
inoussa
1b7b1d4349 fix wsdl parametter ambiguity
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@238 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-08-13 15:50:55 +00:00
inoussa
ab89744bda fpc compatibility fix
doc update

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@236 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-08-12 15:18:57 +00:00
inoussa
726114b2ae Delphi pooling is ok
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@215 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-07-18 11:23:56 +00:00
inoussa
7032cef6b7 - Type Library Editor : array support
- better Delphi support
- server listeners refactored to ease service creation

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@214 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-07-14 23:17:03 +00:00
inoussa
5ce9841611 Delphi server side support ( binary, soap, xmlrpc ):
- the Indy http_server compile and works
 - for xml, the Delphi xmldom unit as used ( tested with msxml )

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@213 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-07-13 22:33:55 +00:00
inoussa
65f4a3dffd + TStringBufferRemotable = reading a node's raw buffer
+ Better Delphi support : client & server( new )
    - SOAP, XMLRPC and BINARY formats

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@212 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-07-12 14:46:45 +00:00
inoussa
549deb3e6d lazarus IDE integration :
- WSDL file import ( GUI ) menu   Project/Web Services Toolkit/Import WSDL File ...
  - WSDL Type Library Editor ( GUI ) Project/Web Services Toolkit/Type Library Editor...


git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@209 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-07-07 20:56:01 +00:00
inoussa
ba1e2d2d2b xml rpc start
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@194 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-06-26 20:42:29 +00:00
inoussa
63754badc0 switching the internal pascal parser to fcl-passrc
type_lib_edtr: type library editor

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@190 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-06-24 23:33:51 +00:00
inoussa
790cf39be4 Linux compatibility fixing
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@162 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-05-06 19:31:24 +00:00
inoussa
320f639458 git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@161 8e941d3f-bd1b-0410-a28a-d453659cc2b4 2007-05-05 21:50:59 +00:00
inoussa
2a350f8827 preparing for the 0.4 release
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@159 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-05-05 19:05:01 +00:00
inoussa
74d5466765 client : new TCP transport implementation ( using synapse library ) in synapse_tcp_protocol.pas
server : TCP server implementatiion ( using synapse library ) in synapse_tcp_server.pas
Delphi : first binary format support
bugs fix in the WSDL generation for the server side

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@158 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-05-02 22:55:35 +00:00
inoussa
44f1a2f5da ws_helper :
+ wst_CreateInstance_<service_name>();
      new function to create a default proxy based on the address and params provided by the wsdl file.

wst runtime :
  + GetServiceDefaultFormatProperties()
  + GetServiceDefaultAddress()

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@153 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-04-26 23:23:41 +00:00
inoussa
558fbb5c86 bugs fixs
Amazon sample runs well

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@148 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-04-22 23:05:25 +00:00
inoussa
7d05065529 ws_helper : Better attribute parsing in nested types
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@145 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-04-17 00:52:02 +00:00
inoussa
bbeed9acfd ws_helper : nested type definition parsing
Example :
	        <xs:element name="NestedType">
	                <xs:complexType>
	                        <xs:sequence>
	                                <xs:element name="Property_1" type="xs:string"/>
	                                <xs:element name="Property_2" minOccurs="0" maxOccurs="unbounded">
      		                              <xs:complexType>
      	                                          <xs:sequence>
      	                                                 <xs:element name="Name" type="xs:string"/>
      	                                                 <xs:element name="Value" type="xs:string"/>
      	                                          </xs:sequence>
      	                                </xs:complexType>
	                                </xs:element>
	                        </xs:sequence>
	                </xs:complexType>
	        </xs:element>

ws_helper : Soap Binding Style are now recorded in the metadata registration subroutine generated by ws_helper


git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@144 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-04-12 00:48:00 +00:00
inoussa
2090bf84b2 ws_helper parses ( and records in procedure Register_%service%_ServiceMetadata() )
- service/port for <soap:address>
  - binding/operation for "soapAction"
  
ws_helper : better parsing of "function" operations

ws_helper supports a new switch :
  -u MODE Generate the pascal translation of the WSDL input file
       MODE value may be U for used types or A for all types


Complexe types extending with simpleContent support in the runtime and ws_helper :
   sample WSDL type
  	<xs:complexType name="MeasureType">
  		<xs:simpleContent>
  			<xs:extension base="xs:decimal">
  				<xs:attribute name="UnitSystem" type="xs:token" use="optional">
  				</xs:attribute>
  				<xs:attribute name="ZeroPoint" type="string" use="optional">
  				</xs:attribute>
  			</xs:extension>
  		</xs:simpleContent>
  	</xs:complexType> 


embedded array support :
   sample WSDL type
      <xsd:complexType name="EmbeddeArraySample">
        <xsd:sequence>
          <xsd:element name="Name" type="xsd:string"/>
          <xsd:element name="Count" type="xsd:int"/>
          <xsd:element name="ArrayItem" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
      </xsd:complexType>

   sample instance of "EmbeddeArraySample"
      <example>
        <Name>WST NAME</Name>
        <Count>3</Count>
        <ArrayItem>Item 0</ArrayItem>
        <ArrayItem>Item 1</ArrayItem>
        <ArrayItem>Item 2</ArrayItem>
      </example>

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@139 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-04-02 13:19:48 +00:00
inoussa
49b0c3d159 soapAction parsing for operation, soap:address ( location ) parsing
TServiceOperation now has Properties ( see IModuleMetadataMngr.SetServiceCustomData ),
Code has been refactored to use ParseFilter() instead using TRttiFilterCreator

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@136 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-03-25 23:47:16 +00:00
inoussa
0071bd8371 First implementation of the "WSDL to Pascal" fonctionality support in ws_helper.
ws_helper now has the following parameters :
  ws_helper [-u] [-p] [-b] [-i] [-oPATH] inputFilename
    -u  Generate the pascal translation of the WSDL input file
    -p  Generate service proxy
    -b  Generate service binder
    -i  Generate service minimal implementation
    -o  PATH  Relative output directory
    -a  PATH  Absolute output directory

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@135 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-03-23 23:22:35 +00:00
inoussa
b5ff30595d git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@37 8e941d3f-bd1b-0410-a28a-d453659cc2b4 2006-11-12 13:31:22 +00:00
inoussa
0cb149edf4 Assertion fix in the parser.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@33 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2006-10-29 15:06:12 +00:00