Commit Graph

674 Commits

Author SHA1 Message Date
Daniele Teti
9c87e6f302 Added 'Scheme' method on RESTClient 2022-11-23 16:37:41 +01:00
Daniele Teti
d419cc690f https://github.com/danieleteti/delphimvcframework/issues/594 2022-11-21 15:20:18 +01:00
Daniele Teti
f0aa9e76d6 Added "Speed" button in activerecord_showcase sample 2022-11-20 00:51:57 +01:00
Daniele Teti
8b7ec97819 Improved TMVCTableMapRepository lock 2022-11-17 23:53:32 +01:00
Daniele Teti
1b7e2ed742 + flyweight for TableMapInfo in TMVCActiveRecord (WIP) 2022-11-17 19:33:27 +01:00
Daniele Teti
d5cc48f7b0 - Removed foTransient from MVCTableField FieldOptions 2022-11-15 09:27:08 +01:00
Daniele Teti
9bc3546215 removed package-lock.json 2022-11-10 18:43:24 +01:00
Daniele Teti
b0080184d2 Improved Samples, mostrly ActiveRecord related 2022-11-10 18:30:11 +01:00
Daniele Teti
071f3fb58f https://github.com/danieleteti/delphimvcframework/issues/589 2022-11-07 21:35:04 +01:00
Daniele Teti
d2a9bf34dd https://github.com/danieleteti/delphimvcframework/issues/591 2022-11-07 19:22:25 +01:00
Daniele Teti
6820fcb4d2 Added JSONRPC "SetConfigureHTTPClientAsync" to configure HTTP client in case of Async call - added Profiler and AsyncTask samples 2022-11-07 15:37:21 +01:00
Daniele Teti
cf104c0a6f Async support for JSONRPCClient (Thanks to our sponsor ORION LAW) 2022-10-29 00:34:49 +02:00
Daniele Teti
a2adf94e15 - New unit tests for Context.Request.BodyAs and BodyFor using RootNode 2022-10-28 09:23:31 +02:00
Daniele Teti
82ca77ab60 Renamed "Render(AErrorCode: Integer etc" in "RenderStatusMessage(etc..." 2022-10-26 19:31:54 +02:00
Daniele Teti
53fc9e394e https://github.com/danieleteti/delphimvcframework/issues/585 2022-10-25 09:00:35 +02:00
Daniele Teti
1a9f1deba3 + New built-in Profiler (check Profiling sample), new Context.ActionQualifiedName property 2022-10-20 17:29:04 +02:00
Daniele Teti
7d883cb677 Improved MasterDetails sample 2022-10-12 13:01:45 +02:00
Daniele Teti
78d2532e98 Improved loggin in StaticFile Middleware 2022-10-09 17:15:25 +02:00
Daniele Teti
f54f74522c - Default error responses contains the official "reason string" associated to the HTTP status code (this can be a breaking change for some generic client which doesn't correctly interpret the http status code)
- Added static method `HTTP_STATUS.ReasonStringFor(HTTPStatusCode)` wich returns the standard `ReasonString` for a given HTTP status code.
- Improved handling of `TMVCErrorResponse` information
- mid-air-collision handling now uses SHA1 instead of MD5
- Added `MVCFramework.Commons.MVC_HTTP_STATUS_CODES` const array containing all the HTTP status codes wich its `ReasonString`
2022-10-09 15:45:59 +02:00
Daniele Teti
3c82c05433 Refactoring for webcontextevents sample 2022-09-29 17:32:35 +02:00
Daniele Teti
d288ab832e preparing for 3.2.2-nitrogen 2022-09-15 09:09:33 +02:00
Daniele Teti
057e08903a https://github.com/danieleteti/delphimvcframework/issues/573
https://github.com/danieleteti/delphimvcframework/issues/574
2022-09-10 11:59:45 +02:00
Daniele Teti
ee6075d6a2 Improved MVCARAntitiesGenerator (WIP), Improved TMVCActiveRecord.Merge method 2022-08-28 13:06:16 +02:00
Daniele Teti
81b175033c Entities Generator 2.0 (WIP) 2022-08-20 17:12:15 +02:00
Daniele Teti
eead8deeeb Updated serversideview samples (Lua and dmustache) 2022-08-19 10:20:13 +02:00
Daniele Teti
05ee1a45c1 Added Renders sample for enums and sets 2022-08-19 09:47:55 +02:00
Daniele Teti
0f3bae84b9 Automated support to avoid "mid-air collisions". New methods SetETag and CheckIfMatch allows a better security without adding complexity to the controller code - check avoid_mid_air_collisions_sample.dproj sample and see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag#avoiding_mid-air_collisions for more info about mid-air collisions. 2022-08-18 01:45:49 +02:00
Daniele Teti
06ab7af8c8 Improved ActiveRecord middleware (better connections handling in case of huge traffic). New sample "middleware_activerecord" 2022-08-13 15:01:15 +02:00
Daniele Teti
821180ea75 Updated LoggerPro, improved Wizard, general code cleaning 2022-08-13 00:21:00 +02:00
Daniele Teti
f79f4722d9 Improved enum and set parameters handling in JSONRPC API 2022-08-10 17:57:59 +02:00
Daniele Teti
31dee93a3e https://github.com/danieleteti/delphimvcframework/issues/565 2022-08-09 13:02:29 +02:00
Daniele Teti
d179575108 In case of multiple MVCPath, Swagger consider only the first one (Thanks V.Ferri) 2022-08-05 12:20:20 +02:00
João Antônio Duarte
7c6eb51811 Added automatic deserialization to TMVCRESTClient.
Resolves #529
2022-08-03 14:28:01 -03:00
Daniele Teti
945f807598 https://github.com/danieleteti/delphimvcframework/issues/564 2022-08-02 23:57:09 +02:00
Daniele Teti
b109c6fed8 https://github.com/danieleteti/delphimvcframework/issues/335 2022-08-02 17:07:14 +02:00
Daniele Teti
40f1f21381 https://github.com/danieleteti/delphimvcframework/issues/485 2022-08-01 11:18:46 +02:00
Daniele Teti
3a58f036f7 Missed file 2022-07-26 09:31:55 +02:00
Daniele Teti
24dff99d7e Improved deserialization phase with more clear error message - added TJSONUtils static class 2022-07-25 15:32:31 +02:00
Daniele Teti
1ac7629aa5 Improved wizard 2022-07-25 10:36:30 +02:00
Daniele Teti
529e50954a More tests added 2022-07-23 16:36:20 +02:00
Daniele Teti
10dff93784 JSONRPC // all tests are green (WIP) 2022-07-23 01:21:52 +02:00
Daniele Teti
321e80e403 Improved handling of array of simple types (string, integers, boolean, TDate, TTime, TTimeStamp) 2022-07-22 19:55:27 +02:00
Daniele Teti
ffcaa49ec5 + jsonrpc, works also "EchoArrayOfRecords" method. 2022-07-20 00:27:55 +02:00
Daniele Teti
efadb389c7 + added feature in jsonrpc sample about record parameters for jsonrpc 2022-07-18 19:04:15 +02:00
Daniele Teti
8ed42ee797 + Added example for serialize single record in controller 2022-07-18 18:04:36 +02:00
Daniele Teti
08bf440713 - Some cleanup, added first call to the sample project about the jsonrpc support for record types 2022-07-11 00:09:59 +02:00
Daniele Teti
fb00bc6dd1 + (WIP) JSON.RPC - Implented other tests. Currently nested array are not deserialized using the static version. 2022-07-07 15:09:31 +02:00
Daniele Teti
08c3fca0b3 + jsonrpc-records - added initial unit tests 2022-07-05 16:18:03 +02:00
Daniele Teti
0ff8110640 + jsonrpc can serialize complex record as responses (nestd record with dynamic arrays) 2022-07-05 14:42:41 +02:00
Daniele Teti
6567dc8d19 + Simple echo-call with nested record works correctly (jsonrpc) 2022-07-05 13:20:09 +02:00
Daniele Teti
7ea0b3c921 + JSONRPC works with simple record not nested 2022-06-23 20:24:57 +02:00
Daniele Teti
8c67718407 Merge branch 'master' into feature_jsonrpc_records
# Conflicts:
#	sources/MVCFramework.JSONRPC.pas
2022-06-23 15:58:25 +02:00
Daniele Teti
da41d68e93 + example db 2022-06-23 15:15:23 +02:00
Daniele Teti
6d0ef7d5a6 + Implemented unit test for GUID support (WIP) 2022-06-23 14:34:01 +02:00
Daniele Teti
ce4616a398 + GUID support for PK (WIP) 2022-06-19 18:57:47 +02:00
Daniele Teti
dfbcadb8fa + First merge with "GUID support for Primary Keys" 2022-06-16 14:05:01 +02:00
Daniele Teti
db0de0f402 https://github.com/danieleteti/delphimvcframework/issues/560 2022-06-14 15:31:27 +02:00
Daniele Teti
5b7bda8d5b Merge branch 'master' into feature_jsonrpc_records 2022-06-14 15:16:46 +02:00
Daniele Teti
af8a728acc + Merge https://github.com/danieleteti/delphimvcframework/pull/559
+ Small changes for MSSQL compatibility
2022-06-14 15:05:04 +02:00
Daniele Teti
31aecd0417 + fixed DB path for winecellarserver 2022-06-13 15:52:07 +02:00
Daniele Teti
63cc2aa4c6 + First changes to allow records as JSONRPC parameters 2022-05-25 15:13:49 +02:00
Daniele Teti
0fac2dd2fa https://github.com/danieleteti/delphimvcframework/issues/550 2022-04-12 12:12:08 +02:00
Daniele Teti
ff9fe81426 https://github.com/danieleteti/delphimvcframework/issues/533 2022-04-05 17:17:35 +02:00
Daniele Teti
52640cb1fb https://github.com/danieleteti/delphimvcframework/issues/548 (WIP) 2022-04-04 14:48:39 +02:00
Daniele Teti
d750b19e55 https://github.com/danieleteti/delphimvcframework/issues/548 (WIP) 2022-04-04 13:08:50 +02:00
Daniele Teti
56dc4ede47 https://github.com/danieleteti/delphimvcframework/issues/548 (WIP) 2022-04-04 13:05:34 +02:00
Daniele Teti
347c5fb2fd + Added support for API versioning in Swagger UI
+ Added Swagger API Versioning Sample (swagger_api_versioning_primer)
2022-04-01 16:49:29 +02:00
Daniele Teti
c1eee8f175 More work about https://github.com/danieleteti/delphimvcframework/issues/538 (thanks to https://github.com/fastbike) 2022-04-01 12:53:13 +02:00
Daniele Teti
594b3a36a9 https://github.com/danieleteti/delphimvcframework/issues/538 (WIP) 2022-03-31 16:43:32 +02:00
Daniele Teti
96bb67a29d + Samples are compilable with Delphi 10.2 Tokyo or better 2022-03-31 09:31:11 +02:00
Daniele Teti
c2d3cbc859 https://github.com/danieleteti/delphimvcframework/issues/542 2022-03-25 10:49:12 +01:00
Daniele Teti
07bd70c5ed + Improved TMVCActiveRecord Interbase support 2022-01-26 23:00:32 +01:00
Daniele Teti
e7972048c8 + final version for the new SWAGGER engine (Sponsored by CENTRO SOFTWARE) 2022-01-11 15:30:40 +01:00
Daniele Teti
a8ce1bb25b + Updated copyright for 2022 2022-01-04 15:44:47 +01:00
Daniele Teti
4b635b9daf Merge branch 'master' of https://github.com/danieleteti/delphimvcframework 2021-12-31 18:06:42 +01:00
Daniele Teti
fd7f508c1b + Swagger for inherited controllers amost works 2021-12-31 18:00:54 +01:00
João Antônio Duarte
dbffee6ff6 [+] Fix https://github.com/danieleteti/delphimvcframework/issues/537 2021-12-30 17:34:52 -03:00
Daniele Teti
f119fb0a13 + added Lua4Delphi 2021-12-30 10:21:38 +01:00
Daniele Teti
f1fa322632 + CustomIntfObject support 2021-12-30 00:45:19 +01:00
Daniele Teti
810282b89e + added eLua server side view support. eLua views requires Lua dlls so the LuaViewEngine is not included in the core but in the sample folder 2021-12-30 00:36:35 +01:00
Daniele Teti
02de5b11ea - Added default filtering for TMVCActiveRecord descendants (more info ASAP)
- Added partitioning for `TMVCActiveRecord descendants` (more info ASAP)

- After a big refactoring (*"I love to delete code" -- cit. Daniele Teti*), support a new SQLGenerator is just 2 (two) methods away!
2021-11-21 19:27:06 +01:00
Daniele Teti
c231e6540e + added test for default filtering 2021-11-18 17:52:06 +01:00
Daniele Teti
5550819fca + Fixed a bug in RQL' MaxRecordCount
+ Implemented Table Partitioning (WIP)
2021-11-18 00:49:12 +01:00
Daniele Teti
49518a311b + table filtering (WIP) 2021-11-17 15:36:20 +01:00
Daniele Teti
07dc4d8569 + fixed fileuploaddemo 2021-11-05 09:53:01 +01:00
João Antônio Duarte
58e53dd9b0 + Added Host and BasePath parameters to the Swagger middleware to make it possible to define a custom BaseURL for the documentation 2021-10-21 20:18:49 -03:00
João Antônio Duarte
932a1a6ac5 Swagger UI updated to version 3.52.5 2021-10-21 20:15:10 -03:00
Daniele Teti
07e16c1e1f - added AddDefaultConnection overload
- added helper methods to IMVCRESTResponse
2021-10-20 11:29:49 +02:00
Daniele Teti
79407d71e1 - create include files to easily mantain aligned all the dpks
- still facing with this issue in Delphi 11 Alexandria (https://quality.embarcadero.com/browse/RSP-35516). Compression works, but the debugger catches an exception raised in "normal cases".
2021-09-29 19:30:14 +02:00
Daniele Teti
ddf1ba1aca - Improved lazy loading for Context.Data property 2021-09-26 18:17:13 +02:00
Daniele Teti
e3eb26e04a + added more unit test for TMVCActiveRecord.Merge method 2021-09-23 22:52:28 +02:00
Daniele Teti
c1220c8917 + renamed folder outputcompression to middleware_compression 2021-09-17 10:45:11 +02:00
Daniele Teti
624f474a16 + updated MVCFramework.ActiveRecordController render methods to use ObjectDict 2021-09-09 23:06:49 +02:00
Daniele Teti
04e687e1a0 https://github.com/danieleteti/delphimvcframework/issues/518 2021-08-30 10:51:20 +02:00
Daniele Teti
4986d9ba3f New! Added the new MVCOwned attribute which allows to auto-create nested objects in the deserialization phase. This will not change the current behavior, you ned to explocitly define a property (or a field) as MVCOwned to allows the serialization to create or destroy object for you. 2021-08-17 15:10:58 +02:00
Daniele Teti
6837182cc3 + updated copyright header 2021-08-15 18:39:55 +02:00
Daniele Teti
56c3732011 + TMVCJWTBlackListMiddleware has been moved in unit MVCFramework.Middleware.JWT and MVCFramework.Middleware.JWTBlackList has been removed 2021-08-15 16:01:20 +02:00
Daniele Teti
b5e255ffe0 + Not JWTBlackList middleware returns 204 instead of 200 when a token is blacklisted
+ Improved JWTBlackList sample
2021-08-15 15:55:18 +02:00
Daniele Teti
e8334bfdb9 + TMVCJWTBlackListMiddleware 2021-08-14 00:48:37 +02:00
Daniele Teti
9e07af91dc + Added new default parameter to TMVCActiveRecord.RemoveDefaultConnection and TMVCActiveRecord.RemoveConnection to avoid exceptions in case of not initialized connection. 2021-08-13 18:05:48 +02:00