Commit Graph

428 Commits

Author SHA1 Message Date
João Antônio Duarte
127025ae55 Added attribute to define authentication type of controller or method. Improvements and fixes in JSON Schema generation from entity
Added support for defining array JSON Schemas for parameters and responses
2019-10-30 12:02:30 -03:00
Daniele Teti
51b0efdba4 Swagger PathID renamed to OperationID
Moved MVCRequiresAuthenticationAttribute into MVCFramework.pas
2019-10-30 00:25:01 +01:00
Daniele Teti
6bdf5547bc Added ToMVCList to wrap any object and try to use as list 2019-10-10 20:16:48 +02:00
João Antônio Duarte
005be2807d Added JWTDescription parameter to Swagger middleware to provide a custom description for JWT authentication. 2019-10-10 08:32:00 -03:00
Daniele Teti
3be8dd9e48 Small changes to CHANGES.TXT 2019-10-10 00:38:48 +02:00
Daniele Teti
8b3d0ee384 Improved windowsservice sample 2019-10-10 00:20:03 +02:00
Daniele Teti
3e10517a86
Merge pull request #280 from denernun/master
Fix WindowsService Sample - Thread ProcessRequests
2019-10-09 23:57:12 +02:00
Daniele Teti
510453576f Added credits to the readme
Fixed https://github.com/danieleteti/delphimvcframework/issues/278
2019-10-09 23:47:07 +02:00
Daniele Teti
0d93ace653 v3.2 (boron) RC1 2019-10-09 23:24:08 +02:00
denernun@gmail.com
8b3fe1e6a2 fix Service Thread ProcessRequests 2019-09-26 02:04:08 -03:00
Daniele Teti
a110dbd56a New Sample - WindowsService 2019-09-25 14:55:51 +02:00
Daniele Teti
a3738777a7 Added SwagDoc 2019-09-25 14:54:04 +02:00
Daniele Teti
6ce183e493
Merge branch 'master' into SwagDoc 2019-09-25 13:01:59 +02:00
Daniele Teti
da9ffb4ad5 Removed loggerpro samples 2019-09-20 14:53:07 +02:00
Daniele Teti
6cf4c51324 Improved activerecord_showcase sample 2019-09-13 15:18:52 +02:00
Daniele Teti
241a07ee82 Added tools folder into the release zip. Preparing RC6 2019-09-04 19:37:11 +02:00
Daniele Teti
fea37fed42 RenderCreated 2019-08-28 00:18:40 +02:00
Daniele Teti
0152d0aac9 FIX https://github.com/danieleteti/delphimvcframework/issues/270 2019-08-23 12:01:33 +02:00
Geoffrey Smith
e83f025b09 Merge remote-tracking branch 'joaoduarte1/middlewareswagger_dev' into SwagDoc 2019-08-06 11:01:57 +10:00
Geoffrey Smith
c1af9737bd Remove now unused files from demo 2019-08-06 10:59:51 +10:00
Geoffrey Smith
d80d6a18f3 Add Documentation to parameters in demo server project 2019-08-06 10:55:27 +10:00
Geoffrey Smith
3903258afa Remove Client Generator code from SwaggerSampleAPI demo 2019-08-06 10:54:23 +10:00
Geoffrey Smith
a33733c1f2 Add Attributes for Non Path Parameters 2019-08-06 00:26:36 +10:00
Geoffrey Smith
0d4b82eac3 Add JsonFieldFromRttiTypeInfo to simplify various methods 2019-08-06 00:25:30 +10:00
Daniele Teti
44deb6ce83 Removed some hints for old version of Delphi 2019-08-05 12:55:57 +02:00
Geoffrey Smith
47029fb1a7 Update of Generated code sample 2019-08-03 15:15:24 +10:00
Geoffrey Smith
b793d5b65e Change MVCPathParam parameters to have Pattern instead of description 2019-08-03 14:26:57 +10:00
Geoffrey Smith
da4a3a5553 Only Add Attributes in interface declaration not in implementation 2019-08-03 13:18:09 +10:00
Geoffrey Smith
d9b0677788 Add Attribute with extra info about path parameter 2019-08-03 10:16:34 +10:00
João Antônio Duarte
992cefe92e Added MVCSwagJsonSchemaFieldAttribute to detail field schema when extracting JsonSchema from class 2019-08-02 15:54:52 -03:00
Geoffrey Smith
69748a4e20 Fill out skeleton methods in MVC Controller 2019-08-02 22:30:49 +10:00
Geoffrey Smith
0dd5f80d9f Ensure unit can't be included multiple times in file 2019-08-02 22:23:49 +10:00
Daniele Teti
cc64a564a8 FIXED compatibility problems with XE7 2019-08-02 12:32:31 +02:00
Geoffrey Smith
0261f6db3b Tidy up DelphiMVCFramework Generator 2019-08-02 19:57:54 +10:00
Geoffrey Smith
0e6569927a Added handling of interfaces and to forward declare classes/interfaces 2019-08-02 19:48:38 +10:00
Geoffrey Smith
76206a36e0 Added Interface and Implementation Constants 2019-08-02 16:59:54 +10:00
Geoffrey Smith
0e9374825a Improve DelphiUnit Generator 2019-08-02 11:44:19 +10:00
Geoffrey Smith
ac02237159 Add petstore swagger file demo file 2019-08-02 11:35:45 +10:00
João Antônio Duarte
85d5518ea1 Improved Swaggerdocapi example
Added JSonSchema creation from object in MVCSwagResponsesAttribute
2019-08-01 18:07:23 -03:00
João Antônio Duarte
439224da4f JWT authentication documentation improvements:
- JWT UrlSegment set to basic authentication format
2019-08-01 17:31:59 -03:00
João Antônio Duarte
69788525c2 improvements on swaggerdocapi example
Added security to methods with MVCRequiresAuthentication attribute
2019-07-31 08:40:11 -03:00
João Antônio Duarte
7d801d94a8 Security Definitions added to documentation when TMVCJWTAuthenticationMiddleware is added to Engine.
The SwaggerDocApi example is not yet functional, I will still make improvements to the example
2019-07-30 18:16:10 -03:00
Geoffrey Smith
2204bfdeaa Update URI's to use Swagger format in Client 2019-07-30 21:06:22 +10:00
Geoffrey Smith
1a8bc7076e Demo of Client API currently generated by Generator 2019-07-30 17:32:09 +10:00
Geoffrey Smith
312f151aa1 Rename functions to have better names 2019-07-30 17:30:28 +10:00
Geoffrey Smith
d95d31d4d4 Improve Delphi Unit Generator code formatting output 2019-07-30 16:44:12 +10:00
Geoffrey Smith
e4f57686e2 Add Start of Clientside REST API Generator 2019-07-30 16:29:31 +10:00
João Antônio Duarte
13a88503c7 Initial commit of creation JsonSchema from Tclass 2019-07-29 17:50:12 -03:00
Geoffrey Smith
e65bd200bc Improve Code formatting 2019-07-30 00:07:00 +10:00
Geoffrey Smith
021cf6e6ed Remove MVCFramework.TypesAliases from Demo project 2019-07-29 23:47:49 +10:00
Geoffrey Smith
452796f402 Initial Commit of Swagger Projects 2019-07-29 22:33:28 +10:00
João Antônio Duarte
17a060d896 Identification Adjustments 2019-07-29 09:27:09 -03:00
João Antônio Duarte
f56768d455 Fixes in adding JsonSchema to documentation 2019-07-29 08:58:08 -03:00
João Antônio Duarte
8f86df526d Added API documentation with Swagger 2019-07-27 15:23:48 -03:00
viniciussanchez
db5b505cf7 IETF - RFC 6750 #244 2019-07-26 08:51:11 -03:00
Daniele Teti
9470c85514 Some fixes after the merge of https://github.com/danieleteti/delphimvcframework/issues/241 2019-07-24 20:49:08 +02:00
Daniele Teti
d77c77758f https://github.com/danieleteti/delphimvcframework/issues/230 2019-07-08 19:26:45 +02:00
Daniele Teti
d554964260 Added optional serializers for TBitmap, TPNGImage and TJPEGImage. IDEExpert has been updated. 2019-06-25 17:33:02 +02:00
Daniele Teti
7363304ba8 Added support for SQLite in MVCActiveRecord 2019-06-24 21:00:17 +02:00
João Antônio Duarte
d6ff2b5964 JWT Middleware Altered to Allow Insert custom headers Authentication, Username and Password 2019-06-11 14:42:03 -03:00
Daniele Teti
0f9b2eda5e Added sample script for mysql and mariadb 2019-05-19 20:24:01 +02:00
Daniele Teti
174b12942a Updated README.md 2019-05-19 15:01:27 +02:00
Daniele Teti
efd170d9ba Merge branch 'master' of https://github.com/pedrooliveira01/delphimvcframework
All conflicts have been fixed
2019-05-19 14:36:17 +02:00
Daniele Teti
bd50a72c71 New sample: Server_in_DLL 2019-05-19 14:06:28 +02:00
Daniele Teti
53bdb8acc0 Improved MVCActiveRecord 2019-05-16 00:17:19 +02:00
Daniele Teti
7b39d94537 Support for X-HTTP-Method-Override to work behind corporate firewalls. 2019-05-10 00:47:18 +02:00
Daniele Teti
6a664d608c 3.1.1-beryllium-RC5 2019-05-09 21:00:26 +02:00
Daniele Teti
f1ff9fa94c Sample for HATEOS 2019-05-08 20:20:25 +02:00
Daniele Teti
a05a599931 Simplified HATEOAS support 2019-05-08 09:11:08 +02:00
Daniele Teti
020cdbc0fa Added custom exception handling. Based on work of David Moorhouse (https://github.com/danieleteti/delphimvcframework/issues/191) 2019-04-20 12:10:33 +02:00
Daniele Teti
68eaed15e9 ISSUE https://github.com/danieleteti/delphimvcframework/issues/154 2019-04-16 23:36:00 +02:00
Daniele Teti
77e78b24f3 ISSUE https://github.com/danieleteti/delphimvcframework/issues/205 2019-04-16 23:12:56 +02:00
Daniele Teti
e86d004808 Compatibility Issues Fixed 2019-03-19 12:06:25 +01:00
Daniele Teti
dc2328c89a Added Dict function to easily return a dictionary of strings.
Improved exceptions rendering.
2019-03-16 17:21:42 +01:00
Daniele Teti
7b8c2e805f Fix LoggerPro package or Seattle (added some IFDEFs) 2019-03-12 01:12:26 +01:00
Daniele Teti
5da30ed243 Extended support for HATEOAS 2019-03-10 16:29:53 +01:00
Daniele Teti
8ee3efc384 dmvcframework-3_1_1-beryllium-RC3 2019-03-08 09:49:33 +01:00
Daniele Teti
beb059a0e3 Improved support for HATEOAS in renders 2019-03-08 09:34:03 +01:00
Daniele Teti
98d4b353f4 TMVCConfig.SaveToFile and TMVCConfig.LoadFromFile now use the default serializer 2019-03-08 07:15:58 +01:00
Daniele Teti
89ea997cda Removed System.JSON dependency from MVCFramework.Middleware.JWT.pas (thank you to joaoduarte19) 2019-03-06 22:28:22 +01:00
Daniele Teti
122cc50b6d Updated Sample 2019-03-06 12:11:31 +01:00
Daniele Teti
f7f0ce8548 Fixed! #164 2019-03-06 12:01:00 +01:00
Daniele Teti
9ebb33969a - New overloads for all the Log* calls. Now it is possibile to call LogD(lMyObject) to get logged lMyObject as JSON.
- Added new unit tests for
- Improved `MVCEntitiesGenerator`
2019-03-05 20:57:25 +01:00
Daniele Teti
75e975811b - Improved! In case of unhandled exception TMVCEngine is compliant with the default response content-type (usually it did would reply using text/plain).
- Fix! [issue184](https://github.com/danieleteti/delphimvcframework/issues/184).
2019-02-24 20:43:40 +01:00
Daniele Teti
cfb4a3268c - Small fixes on ActiveRecordController and PostgreSQL SQLGenerator 2019-02-21 20:27:43 +01:00
Daniele Teti
a57cc3581f - New! TMVCActiveRecord.DeleteAll deletes all the records from a table
- New! `TMVCActiveRecord.DeleteRQL` deletes records using an `RQL` expression as `where` clause.
- New! Microsoft SQLServer Support in ActiveRecord and RQL (thanks to one of the biggest Delphi based company in Italy which heavily uses DMVCFramework)
- Improved! `ActiveRecordShowCase` sample is much better now.
2019-02-21 18:12:01 +01:00
Daniele Teti
4929253007 Added RQL2MSSQL Compiler (preview) 2019-02-05 18:17:25 +01:00
Daniele Teti
20a0e88791 Improved FileUpload Sample, better cacheitem handling, improved TemplatePro view engine 2019-02-01 20:11:33 +01:00
Daniele Teti
73573c0130 3.1.1 (beryllium) RC2 2019-01-29 17:59:14 +01:00
Daniele Teti
c6dba72860 https://github.com/danieleteti/delphimvcframework/issues/116 2019-01-18 19:35:57 +01:00
Daniele Teti
98197beb01 Added TMVCActiveRecord.Count 2019-01-13 19:18:57 +01:00
Daniele Teti
f09ae31a91 Added PostgreSQL SQLGenerator 2019-01-13 18:57:15 +01:00
Daniele Teti
6b32e5a81d Packages refactoring 2019-01-13 00:11:38 +01:00
Daniele Teti
8ed859b7d1 New build system based on pyinvoke 2019-01-08 12:48:53 +01:00
Daniele Teti
f64eebff6a Improvements to the JSON-RPC layer, added MAX_REQUEST_SIZE check and config key. UPdated IDE Expert to add the new config key in the generated code. 2018-12-17 00:40:27 +01:00
Daniele Teti
f6c4382291 JSON-RPC Refactoring 2018-12-12 14:48:35 +01:00
Daniele Teti
835fc651da changed serialization jsonrpc result 2018-12-12 11:00:52 +01:00
Daniele Teti
c5800b3354 Added dmvcframework package
Features freeze for 3.1 (lithium)
Working on the planned issues for this milestone https://github.com/danieleteti/delphimvcframework/milestones/3.1%20(helium)
2018-12-09 23:05:01 +01:00
Daniele Teti
d4a23e52fb Removed unit MVCFramework.TypesAliases.pas
Updated JsonDataObjects.pas
2018-11-24 16:57:04 +01:00
Daniele Teti
29f03e819e Added ability to automatically expose PODO through JSON-RPC interface
FIX https://github.com/danieleteti/delphimvcframework/issues/160
FIX https://www.facebook.com/groups/delphimvcframework/?multi_permalinks=1951719131577883&comment_id=1952551261494670&notif_id=1542833848942998&notif_t=feedback_reaction_generic
2018-11-21 22:14:50 +01:00
Daniele Teti
505710f9cd Small fixes to custom stream json serializer 2018-11-09 18:12:29 +01:00
Daniele Teti
07255a8b23 Refactored MVCActiveRecord framework, added *.SQLGenerators.* units 2018-11-02 21:43:18 +01:00
Daniele Teti
7ca4ccbe59 Completed refactoring about IMVCTypeSerializer 2018-10-31 01:07:25 +01:00
Daniele Teti
132e169542 Changes to the custom type serializer interface 2018-10-30 13:53:18 +01:00
Daniele Teti
70c1e55e94 New MVCActiveRecord showcase samples
New Unit Tests for Compression in TRESTClient
Updated RQL Parser and compilers
New EntitiesGenerator (alpha)
Improved unittests
Updated landing page
2018-10-23 16:18:50 +02:00
Daniele Teti
96bbb83209 Improved support for MySQL in MVCActiveRecord
Better multi thread handling in MVCActiveRecord
2018-10-14 18:24:07 +02:00
Daniele Teti
9dd04f026f Added MySQL/MariaDB support for MVCActiveRecord and RQL compiler 2018-09-28 18:33:54 +02:00
Daniele Teti
4672b81c7b RQL support added to MVCActiveRecord 2018-09-28 13:02:48 +02:00
Daniele Teti
98499a3b97 Added RQL2SQL parser 2018-09-27 12:27:13 +02:00
Daniele Teti
e4cd5894ae MVCActiveRecord Framework, Sample for MVCActiveRecord Framework 2018-09-25 15:38:52 +02:00
Daniele Teti
7998811c74 - 404 and 500 status code returns always a text/plain content-type
- Refactored ISAPI sample
2018-08-08 15:43:37 +02:00
Daniele Teti
00d5a9699a - Config[TMVCConfigKey.FallbackResource] is served only if request path is empty or /.
- Now the JSON-RPC executor provides methods to handle HTTP headers for JSON-RPC requests and notifications.
- FIX for [issue #141](https://github.com/danieleteti/delphimvcframework/issues/141)
- `TDataSetHolder` is a new render that is able to render a dataset with a set of custom metadata (eg `count`,`page` etc). Check [issue #137](https://github.com/danieleteti/delphimvcframework/issues/137)
2018-08-05 20:31:56 +02:00
Daniele Teti
c305aec5fc https://github.com/danieleteti/delphimvcframework/issues/137 2018-07-16 12:34:10 +02:00
Daniele Teti
a4381ec719 Changed the behavior of the JWT LiveValidityWindows
Added milligram.css to some samples
2018-05-17 21:57:03 +02:00
Daniele Teti
34bc5e0638 Added JSON-RPC Notification Support
Added IMVCJSONRPCExecutor for a simpler use of JSON-RPC servers
2018-05-16 19:46:35 +02:00
Daniele Teti
4f16d82ad1 Small WineCellar sample refactoring 2018-05-15 10:33:02 +02:00
Daniele Teti
e4a5f25982 Missed sample files 2018-03-01 12:43:23 +01:00
Daniele Teti
e4ebd425a1 Preparing 3.0.0 hydrogen 2018-02-26 12:26:53 +01:00
Daniele Teti
674c9feac9 Preparing 3.0 hydrogen 2018-02-20 23:33:50 +01:00
Daniele Teti
581a000687 Merge remote-tracking branch 'origin/pluggable_mapper'
# Conflicts:
#	CHANGES.TXT
#	README.md
#	ideexpert/DMVC_IDE_Expert_D102Tokyo.dpk
#	ideexpert/DMVC_IDE_Expert_D102Tokyo.dproj
#	lib/delphistompclient
#	lib/dmustache
#	lib/loggerpro
#	samples/jsonwebtoken/AuthenticationU.pas
#	sources/MVCFramework.Commons.pas
#	sources/MVCFramework.HMAC.pas
#	sources/MVCFramework.JWT.pas
#	sources/MVCFramework.MessagingController.pas
#	sources/MVCFramework.Middleware.CORS.pas
#	sources/MVCFramework.Middleware.JWT.pas
#	sources/MVCFramework.RESTClient.pas
#	sources/MVCFramework.pas
#	sources/ObjectsMappers.pas
#	sources/dmvcframework.inc
#	sources/dmvcframeworkbuildconsts.inc
#	unittests/Several/DMVCFrameworkTests.dpr
#	unittests/general/Several/DMVCFrameworkTests.dproj
#	unittests/general/TestServer/TestServer.dproj
2018-02-20 22:51:03 +01:00
Daniele Teti
4daba2ea67 Some refactoring preparing RC13 2018-02-20 22:36:36 +01:00
Daniele Teti
b49bc82d8b 3.0 RC12 hydrogen 2018-01-29 17:30:53 +01:00
Daniele Teti
2a5892da6b Implemented https://github.com/danieleteti/delphimvcframework/issues/115 2017-12-12 18:32:41 +01:00
Daniele Teti
1dcfc6b903 Merged 2 SSV samples into one 2017-11-25 15:36:33 +01:00
Daniele Teti
ae3a3ec4e6 Added ViewData and ViewDataset. New Compression Sample. 2017-11-23 17:31:26 +01:00
Daniele Teti
233786ae82 https://github.com/danieleteti/delphimvcframework/issues/107 2017-11-16 22:49:38 +01:00
Daniele Teti
c455cdf2ec https://github.com/danieleteti/delphimvcframework/issues/111
https://github.com/danieleteti/delphimvcframework/issues/109
2017-10-30 14:42:52 +01:00
Daniele Teti
a8d57bb78b RC10 2017-10-16 22:57:49 +02:00
Daniele Teti
91e5e6585c Removed old samples 2017-10-10 12:54:14 +02:00
Daniele Teti
84ccc385c1 Improved JSON-RPC support
Improved JSON-RPC sample
2017-10-10 12:20:11 +02:00
Daniele Teti
ac654658f1 Improved JSON RPC 2.0 Client Sample 2017-10-09 16:17:34 +02:00
Daniele Teti
df0479d251 Server Sent Event 2 Sample 2017-10-09 10:41:49 +02:00
Daniele Teti
417ba8850d JSON-RPC Support completed
Added JSON-RPC sample
Added TDataSet.LoadFromTValue
2017-09-28 00:15:35 +02:00
Daniele Teti
6321021430 Initial commit for JSON-RPC 2.0 2017-09-24 19:41:23 +02:00
Daniele Teti
a2718115a0 Small FIX for Delphi XE6 2017-09-21 23:11:50 +02:00
Daniele Teti
121b6359e1 - Removed ContentEncoding
FIX https://github.com/danieleteti/delphimvcframework/issues/105
2017-09-08 17:00:46 +02:00
Daniele Teti
fc72c8c49b Some minor fixes.
All protected serializers methods are now public so that is possible to use the low level serialization as was possibile with the old ObjectsMappers.
2017-09-07 00:11:25 +02:00
Daniele Teti
0b9b8a01bf FIX https://github.com/danieleteti/delphimvcframework/issues/83 2017-08-29 11:54:29 +02:00
Daniele Teti
910d0e847d Unit tests migrated from DUnit to DUnitX 2017-08-21 15:32:08 +02:00
Leonardo Gregianin
efa7141139 Migrate from DUnit to DUnitX in pluggable_mapper branch 2017-08-19 20:36:22 -04:00
Daniele Teti
b3e0bbdf91 RC8
ADDED new action in the renders.dproj sample to show how to render a list with metadata using a wrapper object
CHANGE Optimized some rtti searches in the MVCFramework.Serializer.Abstract.pas
ADDED Cache support for internal use
CHANGED Restored JWT aLoginURL Paramater
ADDED LiveValidityWindowInSeconds for JWT (check the new sample)
2017-07-16 19:39:03 +02:00
Daniele Teti
dcc27fa794 ADDED restored LoginURL parameter in the JWT Middleware to customize the login end-point for JWT
ADDED better error checking in the TRESTClient
2017-07-14 18:23:00 +02:00
Daniele Teti
e52aacc391 ADDED LiveValidityWindowsInSeconds to the JWT classes. 2017-07-12 00:32:37 +02:00
Daniele Teti
f108357a92 FIX JWT (ported from 2.x branch (247f25e519)
SSE Sample updated
2017-07-05 00:19:38 +02:00
Daniele Teti
d6a04c89c2 3_0_0_hydrogen_RC6 2017-06-22 16:19:13 +02:00
Daniele Teti
85cbbd555d SAMPLE CustomLogger is Linux compatible 2017-06-01 14:46:24 +02:00
Daniele Teti
82ef760987 REMOVED ObjectsMappers.pas (finally!) 2017-05-25 16:58:07 +02:00
Daniele Teti
0d8e5f842a Added serversentevents sample
Handled AutoRefCount properties on ARC platform
2017-05-25 12:31:05 +02:00
Daniele Teti
7517df93c6 Merge pull request #80 from janidan/RolebasedAuthHandler
Attribute driven Rolebased Authorization Handler
2017-05-25 10:32:02 +02:00
Daniele Teti
a678421e06 Updated sample render
JsonDataObjects Serializer not produced compact json
2017-05-25 10:31:26 +02:00