Commit Graph

113 Commits

Author SHA1 Message Date
Daniele Teti
4cc5b6560c CustomTypesSerialiers 2017-02-09 19:34:12 +01:00
Daniele Teti
c80f078337 TValue de/serialization 2017-02-09 11:24:24 +01:00
Daniele Teti
9b70ee40fc IMPLEMENTED
IMVCSerUnSer = interface
    ['{1ECA942A-E3C4-45DD-9D23-C00363B5E334}']
    function SerializeObject(AObject: TObject; AIgnoredProperties: array of string): String;
    function SerializeObjectStrict(AObject: TObject): String;
    function SerializeDataSet(ADataSet: TDataSet; AIgnoredFields: array of string): String;
    function SerializeCollection(AList: TObject; AIgnoredProperties: array of string): String;
    function SerializeCollectionStrict(AList: TObject): String;
    procedure DeserializeObject(ASerializedObject: String; AObject: TObject);
    procedure DeserializeCollection(ASerializedObjectList: string; AList: IMVCList; AClazz: TClass);
  end;
2017-02-08 18:30:32 +01:00
Daniele Teti
862f31a1ce Added 'Renderer' in TMVCController 2017-02-08 11:42:35 +01:00
spinettaro
72475e4b96 fixed session timeout when timeout value is 0 2017-01-20 17:29:09 +01:00
Daniele Teti
808e3902d1 Moved TMVCHTTPMethodType and TMVCHTTPMethods to MVCFramework.Commons.pas (You controllers may not compile animore without using this unit)
Better mobile support for RESTAdapter
Better IFDEFing
2017-01-18 21:54:16 +01:00
Daniele Teti
ccc8ee90ab FIX OnBeforeAction (Thank you to Marco Mottadelli)
More unit tests
Refactoring for XE6
Updated copyright to 2017
2017-01-05 12:45:51 +01:00
Daniele Teti
32e7a8d325 Added features selection in dmvcframework.inc
Added MVCFramework.Patches.pas which should try to uniform interfaces of the changed classes in different versions of Delphi
2016-12-30 20:42:49 +01:00
Daniele Teti
05fb9259ae Compilable with XE6 and older
New unit tests
2016-12-29 19:29:22 +01:00
spinettaro
a4a3ea533a Set Stream position to 0, before sending the stream, in SendStream method
This fix stream rendering when DMVC is under apache
2016-12-13 18:16:12 +01:00
Daniele Teti
60ef18d148 ADDED
Config[TMVCConfigKey.FallbackResource]

Defines a default URL for requests that don't map to a route or a file (useful for client side web app)

The experts generates a Config[TMVCConfigKey.FallbackResource] which ponts to 'index.html'
2016-12-07 12:35:46 +01:00
Daniele Teti
81744b892e Merge changes from https://github.com/danieleteti/delphimvcframework/pull/60
Some refactoring needed to be coherent to the rest of the framework
Added a new sample to chow customsession utilization
2016-12-05 15:51:05 +01:00
airtonjs
fa16b01164 Permit to use other class of session 2016-12-05 09:03:58 -04:00
Daniele Teti
9e76485268 Samples Refactoring 2016-11-27 23:18:32 +01:00
Daniele Teti
56a7c8311d FIX Render(Stream,False)
Added Ownership to TDuckTypedList
Added 2 more unit tests
2016-11-18 18:25:50 +01:00
danieleteti
4d1427d859 -IDE Expert small bug fix
- ADDED Paremeter "ARewindStream" to procedure SendStream(AStream: TStream; AOwnStream: Boolean = true;
      ARewindStream: Boolean = false); virtual;
2016-10-10 16:11:48 +02:00
danieleteti
78f635c720 Added Apache 2.4 for windows in the "apache module sample" folder. 2016-10-10 15:49:10 +02:00
danieleteti
ecc4947290 ADDED LoadViewFragment
ADDED TMVCMediaType.TEXT_CSV
2016-10-02 17:44:45 +02:00
danieleteti
3672a73b8d Names refactoring
Added TMVCController.RenderWrappedList to renders heterogeneous lists
2016-09-30 11:44:30 +02:00
spinettaro
d689e92642 added support in TMVCController and ObjectsMappers to serialize a IWrappedList
added link to LoggerPro in tests projects
2016-09-29 18:17:26 +02:00
MPannier
07dcef7eab added ReleaseGlobalLogger in MVCFramework.Logger.pas
added ParamsAsInt64 for TMVCWebRequest
added some "more Results" in TRTTIUtils.TValueAsString
2016-09-27 14:33:51 +02:00
MPannier
af0e4fdca7 removed Iocp.Logger.pas (no longer needed)
Delphi XE3 adjustments
added some missing consts to paramters (thanks to FixInsight; there are a lot more hints)
2016-09-27 14:22:17 +02:00
MPannier
751069cb07 Delphi XE3 adjustments
corrected search path in sample projects
2016-09-27 13:49:24 +02:00
danieleteti
9eaccd9a3e FIX for DX10 Seattle 2016-09-25 22:31:44 +02:00
danieleteti
83f5b378ed Possibile FIX for a RTL bug. IT works now on Berlin and Seattle. 2016-09-25 22:25:06 +02:00
danieleteti
ce80bb79fd Refactoring 2016-09-25 16:17:48 +02:00
danieleteti
6842f5efec IDE Expert: Load optimized configuration for the default generated project (MaxConnections and ListenQueue)
small optimization for body reading in the TWebContext
add sample for CustomAuth
2016-09-20 11:10:47 +02:00
danieleteti
f0670af618 Added custom authentication and authorization middleware 2016-09-16 23:55:11 +02:00
danieleteti
0f5f101802 Updated File CHANGES.TXT 2016-09-06 10:41:31 +02:00
danieleteti
6875ff3704 Added LoggerPro as git submodule
Updated MVCFramework.Logger.pas to use LoggerPro instead of the modified version of IOCPLogger
Added CustomLoggerSample.dproj
Removed IOCP dependencies
2016-09-06 10:33:09 +02:00
danieleteti
ef345debe5 FIX readded Pre XE7 support 2016-09-06 08:37:54 +02:00
danieleteti
be7d5d7183 Send DocumentIndex if request route = '/' and index file exists
FIX Charset issue on static contents
2016-09-05 15:34:55 +02:00
danieleteti
6cbfffdb50 Disabled STOMP Extension. Need refactoring. 2016-08-09 13:08:33 +02:00
danieleteti
5601767e04 - added method TWebContext.SessionStarted (check sample Sessions to see how it works)
- added method TWebContext.SessionID
- added unit test for TWebContext.SessionStarted
2016-06-28 13:44:09 +02:00
danieleteti
f9df7124c1 - added "HasError" and "Error" properties to the IRESTResponse (thank you Mathias Pannier)
- added "Context.Request.QueryStringParams: TStrings"
2016-06-23 12:11:11 +02:00
danieleteti
a102909941 Completed JWT Middleware (Check jsonwebtoken sample to know how to use) 2016-06-23 11:43:15 +02:00
danieleteti
1ef246a589 - Added strongly typed actions
- TWebContext param in the actions is optional
- In case of "action not found", the server dont returns NEVER the document index
- Refactoring
- More unit tests
- BasicDemo updated with typed actions
- Copyright updated (just formatting)
2016-06-22 17:50:31 +02:00
danieleteti
43c3881cc4 ADDED the followings method to TMVCController
-RenderJSONArrayAsProperty
-EnsureQueryParamExists
2016-05-11 10:40:12 +02:00
danieleteti
8f1d0ddf56 ADD Render(TTextWriter) 2016-04-22 09:46:28 +02:00
danieleteti
40fd543a60 Added "DocumentIndex" functionality 2016-04-20 11:02:28 +02:00
danieleteti
cacdabdbb7 Session refactoring
Now session is available also with Context.Session
2016-04-03 22:36:13 +02:00
danieleteti
06c9caa616 ADDED Mapper.LoadJSONObjectToObject
ADDED UnitTest for Mapper.LoadJSONObjectToObject
2016-03-24 15:30:18 +01:00
danieleteti
9d24461a24 https://github.com/danieleteti/delphimvcframework/issues/36 2016-03-23 15:25:05 +01:00
MPannier
40d7220d5d removed Context.Response.SetCustomHeader('Content-Length' in TMVCStaticContents.SendFile; See comment 2016-03-03 16:50:55 +01:00
danieleteti
d39854a8b3 Integrated the path from Mathias Pannier regarding http://qc.embarcadero.com/wc/qcmain.aspx?d=67350 2016-03-01 22:50:32 +01:00
MPannier
0f15eb36e5 Delphi XE3 compatibility
Signed-off-by: danieleteti <d.teti@bittime.it>
2016-02-29 14:52:26 +01:00
Ezequiel Juliano Müller
95427f674b Merge branch 'master' of https://github.com/danieleteti/delphimvcframework into HEAD
# Conflicts:
#	sources/MVCFramework.Server.pas
#	sources/MVCFramework.pas
#	unittests/Several/FrameworkTestsU.pas
2016-02-29 10:08:48 -03:00
Ezequiel Juliano Müller
756b7683a0 Add constructor delegate to controllers. This aims to integrate with frameworks to dependency injection. 2016-02-29 09:48:36 -03:00
danieleteti
2c41c13fd4 Added ExposeServerSignature config key
Added ServerName config key (tristan)
Updated IDEEXPERT with ExposeServerSignature settings (default false)
Updated some sample
2016-02-28 19:06:05 +01:00
danieleteti
80be08f7fc FIX about session cookie 2016-02-28 18:35:50 +01:00