Commit Graph

453 Commits

Author SHA1 Message Date
Daniele Teti
c03315077e https://github.com/danieleteti/delphimvcframework/issues/630 2023-01-28 23:31:00 +01:00
Daniele Teti
89f00fd81d Support for TObject descendants in JSONRPC APIs (not only for JSONObject and JSONArray) 2023-01-23 16:19:32 +01:00
Daniele Teti
fc9fffb9e7 Updated copyright message, removing some warnings 2023-01-17 08:52:26 +01:00
Daniele Teti
973a0c5514 https://github.com/danieleteti/delphimvcframework/issues/610 2022-12-25 19:17:52 +01:00
Daniele Teti
b1f838ece9 https://github.com/danieleteti/delphimvcframework/issues/595 2022-11-24 07:42:03 +01:00
Daniele Teti
1b7e2ed742 + flyweight for TableMapInfo in TMVCActiveRecord (WIP) 2022-11-17 19:33:27 +01:00
Daniele Teti
b0080184d2 Improved Samples, mostrly ActiveRecord related 2022-11-10 18:30:11 +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
08d947d265 Added ObjectPool and InterfacedObjectPool donated by Vivaticket S.p.A. https://www.vivaticket.com/ - Original UnitTests have been merged in the standard DMVCFramework UnitTests 2022-10-26 00:11:32 +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
ee6075d6a2 Improved MVCARAntitiesGenerator (WIP), Improved TMVCActiveRecord.Merge method 2022-08-28 13:06:16 +02:00
Daniele Teti
3998c1288b While not strictly required nor defined, DMVCFramework supports sending body data for all HTTP VERBS - see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET 2022-08-17 12:59:40 +02:00
Daniele Teti
d0098886a5 Improved Wizard adding more middlewares - updated projects 2022-08-13 10:35:53 +02:00
Daniele Teti
f79f4722d9 Improved enum and set parameters handling in JSONRPC API 2022-08-10 17:57:59 +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
4a509b0eb0 - Improved nullable types Python generator
- Unit test refactoring
2022-08-01 19:11:42 +02:00
Daniele Teti
64a1bb22fa Merge branch 'feature_jsonrpc_records' 2022-07-25 15:42:37 +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
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
ffcaa49ec5 + jsonrpc, works also "EchoArrayOfRecords" method. 2022-07-20 00:27:55 +02:00
Daniele Teti
66211feb75 - JSON-RPC record support is almost done (WIP) 2022-07-10 23:30:00 +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
686c23cb33 + Added TMVCRecordUtils.JSONArrayToArrayOfRecord<T> with relative TESTS 2022-07-05 16:51:31 +02:00
Daniele Teti
08c3fca0b3 + jsonrpc-records - added initial unit tests 2022-07-05 16:18:03 +02:00
João Antônio Duarte
22dccb5e11 Added unit tests for serialization with MVCSerializeGuidWithoutBracesAttribute attribute and tests for deserialization of TGUIDs represented in the UUID pattern (no braces) 2022-06-24 14:52:42 -03:00
Daniele Teti
1038a1869f + Completed unit tests for GUID support 2022-06-23 15:14:48 +02:00
Daniele Teti
6d0ef7d5a6 + Implemented unit test for GUID support (WIP) 2022-06-23 14:34:01 +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
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
98fd21ac8f https://github.com/danieleteti/delphimvcframework/issues/530 2022-03-25 11:49:22 +01:00
Daniele Teti
78ef7c01a9 https://github.com/danieleteti/delphimvcframework/issues/544 2022-03-25 11:02:09 +01: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
cf3c3d8adf + Removed ViewJSON reference from Mustache View Engine 2022-01-21 18:33:00 +01:00
Daniele Teti
a8ce1bb25b + Updated copyright for 2022 2022-01-04 15:44:47 +01:00
Daniele Teti
17cc5d5eea + Compatibility fix for Delphi 10.2 Tokyo 2021-11-23 18:03:48 +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
3360dea516 + completed tests for default filtering and partitioning (just for PostgreSQL) (WIP for other RDBMSes) 2021-11-19 00:34:37 +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
eceefb2366 + removed inline var for older delphi versions still supported 2021-11-05 09:27:28 +01:00
Daniele Teti
a5a147c91d https://github.com/danieleteti/delphimvcframework/issues/526 2021-11-02 12:03:22 +01: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
27223a0a93 +added unit MVCFramework.Utils.pas which will contains all the 'simple functions' used in end user controllers 2021-09-15 14:24:39 +02:00
Daniele Teti
96c733c618 +updated some defaults in unittests 2021-09-15 09:53:23 +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
7d35483ba3 + improved UTC related tests 2021-08-15 18:36:36 +02:00
Daniele Teti
07805a80ac https://github.com/danieleteti/delphimvcframework/issues/485 2021-08-15 16:39:41 +02:00
Daniele Teti
444e085d4f + request content type are decoded only for mtPut, mtPost, mtPatch
+ added XMLDoc comment to rest client methods which directly maps HTTP VERBS
2021-08-13 17:06:15 +02:00
Daniele Teti
c28c5f0832 https://github.com/danieleteti/delphimvcframework/issues/513 2021-08-11 00:21:04 +02:00
Daniele Teti
ac2a03a804 [+] added RaiseIfNotFound parameter in TMVCActiveRecord.Update and TMVCActiveRecord.Delete 2021-06-27 15:14:37 +02:00
João Antônio Duarte
832d71d436 [+] Fix https://github.com/danieleteti/delphimvcframework/issues/492 2021-05-19 16:17:47 -03:00
Daniele Teti
c997d0647e [+] Added more tests for injected parameters 2021-04-22 00:13:46 +02:00
Daniele Teti
c0f4860009 [+] Added unit test for MVCFromQueryString and MVCFromHeader 2021-04-21 20:03:13 +02:00
João Antônio Duarte
b0df0b1f5a [+] Improved SnakeCase conversion 2021-04-06 19:50:50 -03:00
Daniele Teti
5516b49345 no message 2021-04-05 19:35:46 +02:00
Daniele Teti
50b2983e30 [+] added Delphi 10.4.2 LSP files to the .gitignore 2021-04-04 18:16:27 +02:00
Daniele Teti
7870b20907 [+] Improved built runner 2021-03-04 14:29:13 +01:00
Daniele Teti
244c70084e [+] Improved ThreadSafeQueue
[+] Added MVCJSONRPCAllowGET attribute
2021-02-23 18:00:32 +01:00
Daniele Teti
c55bfea9da [+] Small improvement in custom type serialisers 2021-02-15 18:28:45 +01:00
Daniele Teti
6b0b09b5bb [+] Added type aliases for generic types registered as custom type serializer 2021-02-15 18:17:39 +01:00
Daniele Teti
dbd46c8042 [+] More test for LRUCache 2021-02-12 18:44:43 +01:00
Daniele Teti
088b8b3240 [+] improved unit test architecture 2021-02-10 11:26:14 +01:00
Daniele Teti
2c79ff6c6a [+] Unit test refactoring 2021-02-04 14:11:33 +01:00
Daniele Teti
77ad5ecd10 [+] fix for nil objects in lists during serialization
[+] preparing for 3.2.2-nitrogen
2021-01-27 20:25:35 +01:00
João Antônio Duarte
166c8c669d Fixed property deserialization of type TMVCStringDictionary 2021-01-13 18:43:16 -03:00
Daniele Teti
d9b20d8ce4 Fix border case when using string and widestring params in TMVCActiveRecord 2020-12-18 14:41:01 +01:00
João Antônio Duarte
112bf48101 Added request hooks to TMVCRESTClient 2020-12-16 20:05:39 -03:00
Daniele Teti
d883f87fb5 Added unit test for time/date types in RQL query 2020-12-14 14:40:07 +01:00
Daniele Teti
4dd2c86bdf Removed some hints 2020-12-14 10:35:22 +01:00
Daniele Teti
5443509a97 Completed automated tests for PG 2020-12-13 00:36:55 +01:00
Daniele Teti
de95bb19cf Added postgres tests with a lite version of portgresql 13.1 2020-12-12 19:26:18 +01:00
Daniele Teti
afabd2fde6 Better internal unit test irganization for TMVCActiveRecord 2020-12-11 18:53:37 +01:00
João Antônio Duarte
972237a17a Testing adjustments to work with the new RESTClient 2020-11-29 10:34:02 -03:00
João Antônio Duarte
181cf5aba9 Merge branch 'master' into feature_restclient 2020-11-27 14:14:41 -03:00
Daniele Teti
967a5322a1 https://github.com/danieleteti/delphimvcframework/issues/432 2020-11-27 15:13:17 +01:00
João Antônio Duarte
8ba8213a6e Compatibility adjustments in the new RESTClient 2020-11-10 19:13:02 -03:00
João Antônio Duarte
9c43f85b33 Merge branch 'master' into feature_restclient 2020-11-09 07:55:06 -03:00
Daniele Teti
11c7b397d4 Improved CRUD sample 2020-11-05 15:42:31 +01:00
Daniele Teti
4a65b78fb5 https://github.com/danieleteti/delphimvcframework/issues/434 2020-11-04 19:06:54 +01:00
João Antônio Duarte
5fa41c6837 Merge branch 'master' into feature_restclient 2020-10-19 19:41:42 -03:00
Daniele Teti
e5310e626f https://github.com/danieleteti/delphimvcframework/issues/435 2020-10-19 19:41:16 +02:00
João Antônio Duarte
e9ecdd67e1 Merge branch 'master' into feature_restclient 2020-10-18 20:39:52 -03:00
João Antônio Duarte
cb1cf5a383 Conversion to snake case improved, as in some cases it still failed. 2020-10-17 12:32:55 -03:00
João Antônio Duarte
46f28cde64 Corrections in snake case and correction in camel case
Fix #436
2020-10-16 20:12:20 -03:00
João Antônio Duarte
6b2e1c1a1b Added serialization support with snake_case case 2020-10-15 21:37:55 -03:00
João Antônio Duarte
df6fc6d43a Merge remote-tracking branch 'upstream/master' into feature_restclient 2020-10-01 08:39:05 -03:00
Daniele Teti
057519d550 https://github.com/danieleteti/delphimvcframework/issues/424 2020-09-30 11:16:10 +02:00
João Antônio Duarte
cf7c81520b Added SessionId method to improve DMVC server session management. SetBasicAuthorization and SetBearerAuthorization methods changed to persist authorization for all requests. 2020-09-24 15:03:11 -03:00
João Antônio Duarte
15c92f5d67 Added more unit tests for the TMVCRESTClient 2020-09-23 20:50:19 -03:00
Daniele Teti
311be67323 New functionality explained in the jsonrpc samples (TMultiDataset) 2020-09-22 15:18:22 +02:00