Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
exilon committed Jun 1, 2019
2 parents 777a5c8 + db6bec1 commit 7521a41
Show file tree
Hide file tree
Showing 27 changed files with 360 additions and 531 deletions.
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -53,3 +53,13 @@ samples/ORMRestServerDemo/bin/Android/Debug/
samples/ORMRestServerDemo/source/bin/Android/Debug/

samples/ORMRestServerDemo/source/Firemonkey/android/AndroidManifest\.template\.xml

*.ppu

*.rsj

*.db3

*.db3-journal

samples/ORMRestServerDemo/source/fpc/backup/
8 changes: 5 additions & 3 deletions Quick.ORM.App.Config.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.App.Config
Description : Load/Save config from/to JSON file
Author : Kike Pérez
Version : 1.1
Version : 1.2
Created : 26/01/2017
Modified : 29/09/2017
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -32,6 +32,8 @@

unit Quick.ORM.App.Config;

{$i QuickORM.inc}

interface

uses
Expand Down
12 changes: 8 additions & 4 deletions Quick.ORM.DataBase.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike P�rez
Unit : Quick.ORM.DataBase
Description : Rest ORM Database config & connection
Author : Kike Pérez
Author : Kike P�rez
Version : 1.2
Created : 20/06/2017
Modified : 23/09/2018
Modified : 27/02/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -32,7 +32,7 @@

unit Quick.ORM.DataBase;

{$i QuickLogger.inc}
{$i QuickORM.inc}

interface

Expand All @@ -43,7 +43,11 @@ interface
mORMot,
mORMotDB,
SynDB,
{$IFNDEF FPC}
System.IOUtils,
{$ELSE}
Quick.Files,
{$ENDIF}
Quick.Commons,
Quick.ORM.Engine;

Expand Down
11 changes: 6 additions & 5 deletions Quick.ORM.Engine.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.Engine
Description : Rest ORM Engine
Author : Kike Pérez
Version : 1.4
Version : 1.5
Created : 02/06/2017
Modified : 11/08/2018
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -32,10 +32,11 @@

unit Quick.ORM.Engine;

interface

{$i QuickORM.inc}
{$INCLUDE synopse.inc}

interface

uses
Classes,
SysUtils,
Expand Down
8 changes: 5 additions & 3 deletions Quick.ORM.Form.Login.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.Form.Login
Description : ORMRestClient Login Form
Author : Kike Pérez
Version : 1.1
Version : 1.2
Created : 02/06/2017
Modified : 09/09/2017
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -31,6 +31,8 @@
*************************************************************************** }
unit Quick.ORM.Form.Login;

{$i QuickORM.inc}

interface

uses
Expand Down
11 changes: 6 additions & 5 deletions Quick.ORM.RestClient.Cross.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.RestClient.Cross
Description : Rest ORM Client access by http, httpapi or websockets mobile
Author : Kike Pérez
Version : 1.4
Version : 1.5
Created : 02/06/2017
Modified : 07/09/2017
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -31,10 +31,11 @@
*************************************************************************** }
unit Quick.ORM.RestClient.Cross;

interface

{$i QuickORM.inc}
{$INCLUDE synopse.inc}

interface

uses
Classes,
SysUtils,
Expand Down
33 changes: 20 additions & 13 deletions Quick.ORM.RestClient.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.RestClient
Description : Rest ORM Client access by http, httpapi or websockets
Author : Kike Pérez
Version : 1.4
Version : 1.6
Created : 02/06/2017
Modified : 07/09/2017
Modified : 01/06/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -31,10 +31,11 @@
*************************************************************************** }
unit Quick.ORM.RestClient;

interface

{$i QuickORM.inc}
{$INCLUDE synopse.inc}

interface

uses
Classes,
SysUtils,
Expand Down Expand Up @@ -70,10 +71,14 @@ THTTPClientOptions = class
fConnectTimeout : Integer;
fWSEncryptionKey : RawUTF8;
fNamedPipe : RawUTF8;
fProxyName : RawUTF8;
fProxyPass : RawUTF8;
public
property AuthMode : TAuthMode read fAuthMode write fAuthMode;
property Protocol : TSrvProtocol read fProtocol write fProtocol;
property ConnectionTimeout : Integer read fConnectionTimeout write fConnectionTimeout;
property ProxyName : RawUTF8 read fProxyName write fProxyName;
property ProxyPass : RawUTF8 read fProxyPass write fProxyPass;
property SendTimeout : Integer read fSendTimeout write fSendTimeout;
property ReceiveTimeout : Integer read fReceiveTimeout write fReceiveTimeout;
property ConnectTimeout : Integer read fConnectTimeout write fConnectTimeout;
Expand Down Expand Up @@ -181,6 +186,8 @@ constructor THTTPClientOptions.Create;
fConnectTimeout := HTTP_DEFAULT_CONNECTTIMEOUT;
fWSEncryptionKey := DEF_ENCRYPTIONKEY;
fNamedPipe := DEF_NAMEDPIPE;
fProxyName := '';
fProxyPass := '';
end;


Expand Down Expand Up @@ -245,49 +252,49 @@ function TORMRestClient.Connect : Boolean;
case fHTTPOptions.Protocol of
spHTTP_Socket:
begin
ORM := TSQLHttpClientWinSock.Create(fHost, IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWinSock.Create(fHost, IntToStr(fPort), fDataBase.Model, False, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWinSock(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
end;
spHTTPsys:
begin
ORM := TSQLHttpClientWinHTTP.Create(fHost,IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout,fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWinHTTP.Create(fHost,IntToStr(fPort), fDataBase.Model, False, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout,fHTTPOptions.ConnectTimeout);
TSQLHttpClientWinHTTP(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
TSQLHttpClientWinHTTP(ORM).Compression := [hcSynShaAes];
end;
{$ifdef MSWINDOWS}
spHTTPsys_SSL:
begin
ORM := TSQLHttpClientWinHTTP.Create(fHost,IntToStr(fPort), fDataBase.Model, True, '', '', fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWinHTTP.Create(fHost,IntToStr(fPort), fDataBase.Model, True, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWinHTTP(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
TSQLHttpClientWinHTTP(ORM).Compression := [hcSynShaAes];
end;
{$endif}
spHTTPsys_AES:
begin
ORM := TSQLHttpClientWinHTTP.Create(fHost,IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWinHTTP.Create(fHost,IntToStr(fPort), fDataBase.Model, True, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWinHTTP(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
TSQLHttpClientWinHTTP(ORM).Compression := [hcSynShaAes];
end;
spHTTP_WebSocket:
begin
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, False, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWebsockets(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
end;
spWebSocketBidir_JSON:
begin
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, False, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWebsockets(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
(ORM as TSQLHttpClientWebsockets).WebSocketsUpgrade('', True);
end;
spWebSocketBidir_Binary:
begin
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, False, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWebsockets(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
(ORM as TSQLHttpClientWebsockets).WebSocketsUpgrade('', False);
end;
spWebSocketBidir_BinaryAES:
begin
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
ORM := TSQLHttpClientWebsockets.Create(fHost,IntToStr(fPort), fDataBase.Model, False, fHTTPOptions.ProxyName, fHTTPOptions.ProxyPass, fHTTPOptions.SendTimeout, fHTTPOptions.ReceiveTimeout, fHTTPOptions.ConnectTimeout);
TSQLHttpClientWebsockets(ORM).KeepAliveMS := fHTTPOptions.ConnectionTimeout;
(ORM as TSQLHttpClientWebsockets).WebSocketsUpgrade(fHTTPOptions.WSEncryptionKey, False);
end;
Expand Down
13 changes: 7 additions & 6 deletions Quick.ORM.RestDB.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.RestDB
Description : Rest ORM access SQLite db only
Author : Kike Pérez
Version : 1.5
Author : Kike Pérez
Version : 1.6
Created : 02/06/2017
Modified : 03/10/2018
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -32,10 +32,11 @@

unit Quick.ORM.RestDB;

interface

{$i QuickORM.inc}
{$INCLUDE synopse.inc}

interface

uses
Classes,
SysUtils,
Expand Down
11 changes: 6 additions & 5 deletions Quick.ORM.RestDBFull.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.RestDBFull
Description : Rest ORM access local/remote db only
Author : Kike Pérez
Version : 1.5
Version : 1.6
Created : 12/06/2017
Modified : 23/09/2018
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -32,10 +32,11 @@

unit Quick.ORM.RestDBFull;

interface

{$i QuickORM.inc}
{$INCLUDE synopse.inc}

interface

uses
Classes,
SysUtils,
Expand Down
15 changes: 10 additions & 5 deletions Quick.ORM.RestServer.pas
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{ ***************************************************************************
Copyright (c) 2016-2018 Kike Pérez
Copyright (c) 2016-2019 Kike Pérez
Unit : Quick.ORM.RestServer
Description : Rest ORM Server allows access by http, httpapi or websockets
Author : Kike Pérez
Version : 1.8
Version : 1.9
Created : 02/06/2017
Modified : 23/09/2018
Modified : 08/05/2019
This file is part of QuickORM: https://github.com/exilon/QuickORM
Expand All @@ -32,10 +32,11 @@

unit Quick.ORM.RestServer;

interface

{$i QuickORM.inc}
{$INCLUDE synopse.inc}

interface

uses
Classes,
SysUtils,
Expand Down Expand Up @@ -131,6 +132,10 @@ TORMService = class
constructor Create;
end;

{$IFDEF FPC}
TProc = procedure;
{$ENDIF}

TORMRestServer = class(TORMBaseServer)
private
fHTTPServer : TORMHTTPServer;
Expand Down
Loading

0 comments on commit 7521a41

Please sign in to comment.