Commit Graph

35 Commits

Author SHA1 Message Date
Adrien Marquès cd2bcdd8bc ref 0: first working version ; totest 2019-05-01 15:14:49 +02:00
Adrien Marquès 7e66b6ddd5 ref 0: big refactor of concerns between api request, server, etc 2019-05-01 13:44:45 +02:00
Adrien Marquès a63e227538 ref 0: internal/request 2019-05-01 00:02:28 +02:00
Adrien Marquès 0eee615aea rename 'internal/api' to 'internal/apidef' (api definition) 2018-10-07 11:40:35 +02:00
Adrien Marquès 54d4b860de release req.Body when serving http 2018-10-02 17:14:44 +02:00
Adrien Marquès b1092437f9 refactor default type checkers | load default types if set in aicra.json (.build/DEFAULT_TYPES/*.so) 2018-10-02 11:10:21 +02:00
Adrien Marquès 85a0521723 rename err.BindArgument() to err.Put() 2018-10-01 21:21:27 +02:00
Adrien Marquès d406338777 implement driver for type checkers | move controller/middleware/checker definition inside the 'driver' package (all uses are exported from this place) | now driver.Driver returns 'Controller', 'Middleware', and 'Checker' in the interface | a lot a junk 2018-10-01 19:27:38 +02:00
Adrien Marquès 37fe30ebc7 rename 'internal/meta' to 'internal/config' | move driver type definition into explicit file + remove 'import' driver | remove useless method to parse multipart 2018-10-01 17:43:18 +02:00
Adrien Marquès 253a2b0b59 minfix in 'AICRA' command | plugins are now using the Export() method to return Controller/Middleware 2018-10-01 15:27:56 +02:00
Adrien Marquès 7bcbefdf35 rename 'internal/config' to 'internal/api' | rename 'internal.api.Load()' to 'internal.api.Parse()' 2018-10-01 14:15:00 +02:00
Adrien Marquès 9c9079f06b add 'driver.Driver.Name() string' and use it to select the default type/middleware folder (.build/middleware or middleware) | fix driver.Generic.LoadMiddleware() | remove variadic arguments for middleware.CreateRegistry() and checker.CreateRegistry() 2018-09-28 15:59:21 +02:00
Adrien Marquès 2cfc5a2ba0 update 'middleware' types | rename driver.Driver.Load() into RunController() | add driver.Driver.LoadMiddleware() | add driver management to middleware.Registry at creation | [TODO] implement diver.Generic.LoadMiddleware() 2018-09-28 10:54:13 +02:00
Adrien Marquès f5800900b0 rename 'internal/apirequest' to 'internal/request' but use import alias 'apirequest' in dependencies 2018-09-28 08:10:41 +02:00
Adrien Marquès fced676c42 add 'driver/generic' (to test, alpha version) 2018-09-27 14:11:48 +02:00
Adrien Marquès 3feae783dc add driver management + moved implementation of default driver into 'driver/plugin' 2018-09-27 13:43:36 +02:00
Adrien Marquès 5aef3f5572 server implements http.Handler (ServeHTTP(responseWrite, request)) | apirequest.BuildFromHTTPRequest() becomes apirequest.FromHTTP() | update readme 2018-07-11 19:02:33 +02:00
Adrien Marquès 05d5c23038 fix aicra.files.IsDir() which logic was inverted | make add() private for registries (checker + middleware) + fix server.go (invalid address for Server.controller because wasn't initialized to NIL) 2018-07-11 01:51:10 +02:00
Adrien Marquès 1aee9e92fd rename package 'request' -> 'apirequest' ; 'config' -> 'controller' + main types.go bundled into server.go + made attributes non-exported (lowercase) 2018-07-11 01:36:42 +02:00
Adrien Marquès 637bc91770 LINT: renaming + refactor 2018-07-09 01:34:21 +02:00
Adrien Marquès 6ebdd61325 LINT + Server.extractParameters is now private + add management for errors : 'UncallableController' and 'UncallableMethod' 2018-07-09 01:00:45 +02:00
Adrien Marquès 0bf5646eb7 remove setters for checker/middleware build folders 2018-07-09 00:32:19 +02:00
Adrien Marquès 07bbdbbe30 rename 'implement' into 'response' 2018-07-09 00:15:29 +02:00
Adrien Marquès 6784c2df95 moved local imports into 'internal' parent package 2018-07-09 00:10:03 +02:00
Adrien Marquès 94171ab6a9 remove debug + change 'custom-types' folder for custom types to 'types' 2018-07-07 23:37:12 +02:00
Adrien Marquès bb8cf07ab6 fix controller path + minmod 2018-07-07 23:15:54 +02:00
Adrien Marquès b39dff10eb add middleware (same principle as types) + scope check in progress 2018-07-07 22:10:56 +02:00
Adrien Marquès 8dc2de5e5d minmod 2018-07-07 19:24:02 +02:00
Adrien Marquès 5b86855f27 refactor 'routeRequest' 2018-07-07 19:21:00 +02:00
Adrien Marquès 5fa8db0b7c Init(manifest, typechecker), now typechecker is optional (not nil, optional) + rename package 'gfw' into 'aicra' 2018-07-07 18:12:50 +02:00
Adrien Marquès ee72e2d285 move .build/types to .build/type + update checker accordingly 2018-07-07 18:05:57 +02:00
Adrien Marquès f0aa6d2c5c minfix 2018-07-06 10:51:45 +02:00
Adrien Marquès f0719e606c refactor 'router' + 'loader' into 'server' 2018-07-06 10:49:52 +02:00
Adrien Marquès 18f4bcbbae add 'controller path-finding' + 'method check' + [TODO: issue with ParseMultipartForm() that is slow] 2018-05-21 13:02:15 +02:00
Adrien Marquès 7301f2065c created initialiser + request builder (which supports form-data, urlencoded, json) 2018-05-21 12:02:24 +02:00