Skip to content

paolo-rossi/WiRL

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WiRL

Delphi RESTful Library

Delphi RESTful Library

WiRL was created to simplify RESTful service implementation in Delphi, but more importantly, to enable maximum interoperability with REST client written in other languages and tools.

WiRL is designed after Java JAX-RS specifications, and tries to be compliant with the 6 REST constraints

WiRL is a high-level REST framework that exposes plain Delphi objects (PODO) as RESTful web resources by applying attributes to these classes.

[Path('customers')]
TCustomerResource = class
public
  [GET]
  [Produces('TMediaType.APPLICATION_JSON')]
  function SelectCustomers: TCustomerList;

  [POST]
  [Consumes('TMediaType.APPLICATION_JSON')]
  [Produces('TMediaType.APPLICATION_JSON')]
  function InsertCustomer(ACustomer: TCustomer): TCustomer;
end;

WiRL has a strong HTTP content negotiation and defines attributes to bind specific URI patterns and HTTP operations to individual methods of your Delphi class. It has parameter injection attributes so that you can easily pull in information from the HTTP request. It has message body readers and writers that allow you to decouple data format marshalling and unmarshalling from your Delphi objects. It has exception mappers that can map an exception to an HTTP response code and message.

About

WiRL: RESTful Library for Delphi

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Pascal 98.7%
  • Other 1.3%