* prevent throwing another exception if the request fails eg connection reset
* prevent throwing another exception if the request fails eg connection reset
* [Slim] Add Basic Authentication Middleware
User needs to add own implementation to verifyCredentials method in AuthBasic.php.
* [Slim] Update README template
I'm not sure about `middlewareSrcPath` variable. I'll fix it in following PRs
if path is broken.
Hope that notice in README catches attention and most of users will read it.
* Revert "[Slim] Update README template"
This reverts commit 204ee02fd853feb3cc19db5658348c7fee6ca3f5.
* Revert "[Slim] Add Basic Authentication Middleware"
This reverts commit 6a8e03079a70213797896e660b7e7fa1894da0a6.
* [Slim] Add "tuupola/slim-basic-auth" package
Package "tuupola/slim-basic-auth" 3.1.0 requires PHP 7, that's why I
set it's version to ^3.0.0 in Composer. Minimum version will be
3.0.0-rc.1 which supports PHP 5.5. I've tested build with PHP 7, it
would be nice to check build with PHP 5.5 someday.
* [Slim] Update README template
Not sure about forward slash in path to SlimRouter class. I will fix it
in upcoming PRs if necessary.
* [Slim] Refresh samples
* Remove warnings and add custom request sending
* Remove duplicate code from subclass and add missing setupRoutes
* Removed redundant override
* Add serialization of responses
* Fix CI failure
* Add inline function to duplicate code.
* Make const reference wherever possible
* Add support for Array of Primitive types.
* Add Array of Primitive support for Error response
* Update for multiple path params
* Ignore additionalProperties
rust-server doen't yet support them, and they cause quite a bit of havoc at the moment (ending up as the `HashMap` type).
* Use .equals() rather than `==`
* Add support for multiple rust-server samples
Though we only have the one as yet. This will make it easier to move rust-server back on to the main test spec, whilst preserving the ability to have rust-specific test specs.
* Rust samples need unique names
* Move samples to a dedicated directory
So that there is nothing else in the folder where they live so that the workspace definition in the root Cargo.toml can be simple.
This commit includes the following changes:
- Fix docs not generating parameter descriptions, add rust sample.
- Add example to doc output.
- Add basic scope reporting.
- Stringify the JSON "Example" objects for response schemas.
- Prettify JSON examples in response schemas.
- Parse and present multiline response descriptions.
- Add API error details to docsgen.
- Add read only markers to read only properties.
- Fix up style document indentation.
- Add support for `x-shared-errors`, an extension to define common error types that can be shared across a microservice framework.
* Initial wiring to get the QHttpEngine Server running for Qt5 server
* Add wiring for build environment
* Add current generated files
* Update README.md
* Solved Build for Docker and Host
Wired up main
TODO : Route API call to handlers
* Wire up routes
* Wiring up routes update
* Convert Path to QHttpEngine format
* Rename some files
* Extract query Parameters and path parameters
* Removed pri file, Qt can read CMakeLists.txt
* Initial support of deserialization
* Adding initial support for response serialization
* Setup simple signal handler to quite the server with Ctrl+C in a container and on the host
* Remove unneeded function
* Add executable permission to script and move from Debian to Alpine for Dockerfile
* Add stringValue of missing types
* Unify toJson'xxx' APIs the same way like setValue
* Rework to remove all pointer usages, pass by const references, simplify model, add emit signals to default handlers
* Port GMock feature from NativeInstruments
swagger-codegen fork:
https://github.com/NativeInstruments/swagger-codegen/pull/9
* Update petstore for Mockable APIs
* Fix shared_ptr in templates for File params
* Add guards in templates for GMock APIs
* Regenerate samples without GMocks
* Add useful constructors for GMock APIs
* Add constructors to API header interface
* Update samples with explicit monadic constructors
* Add default implementations for destructors
* [Rust] Move request logic into standalone file
This reduces the number of variables which are used in the generated
operations, thus fixing #512.
This also fixed a TODO related to URI parsing errors.
Other than that, it is meant to be functionally identical.
* [Rust] Add support for non-file form params
Up until now, they just weren't there at all
* [Rust] Use more rustic terms in example
* [rust-server] drop 'file' support
In swagger v2, we had 'binary', 'byte', and 'file'. OpenAPI v3 only has
the former two. This commit drops the old 'file' handling. This has the
side-effect of removing a half-complete implementation of form parameter handling.
This removes the ability to send files as streams, so will make life
harder for those wishing to send large files without running out of
memory.
* Remove all remaining uses of `hasFile`
* Add the Possibility to fetch dependencies needed by the generated code
* Fix typo
* Make External Libraries default to false
* Add parameter string to the javadoc comment
#513 Fixed error that causes exception when trying to perform HTTP requests without a body and an empty Object is used as body instead. In these cases an exception is thrown indicating that it is not possible to find a message converter for java.lang.Object and application/json.
* typescript-jquery: fix promise resolution
The type annotation that is generated for an API states that the
JQueryPromise<...> will be resolved with a single value.
The implementation, on the other hand resolves with two.
This changes the implementation to resolve the promise in accordance
with the type annotation.
It also adds another type specifying what will be passed if the promise
is rejected.
* Update petstore sample for typescript-jquery
* Generate RequestParser trait to allow retrieving operation ID in middlewares
* Update function name
* Fix incomplete comment
* Add comment poitning out auotgenerated duplication
* Final generation of sample scripts
* MMORCH-913 - Allow passing wrapped hyper clients to codegen
* Deprecate old API for back-compatibility rather than removing it
* Actually test Rust-server example integrations
* Added a .gitignore to ignore the build folder
* Added a CMakeLists and a basic implementation of a double linked list
* Added the pet model
* changed the behaviour when a list gets freed - the data of each element doesn't get freed anymore
* Added the tool uncrustify in order to make code look better
* Uncrustified code
* added an implementation(constructor and deconstructor) for the category model
* Added a third party JSON library
* The pet struct now uses pointers for its members; the pet struct now has a proper constructor and a basic toJSON method
* The pet model now gets fully serialized into JSON
* Fixed the example url...
* Added third party library libcurl
* Modified category struct and added an unit test
* Added a foreach macro and added two functions
* Added a tag model and an unit test
* the pet struct now uses no double pointer for it's name anymore and no pointer for the enum status anymore; the pet struct can now be fully converted to json and parsed from json
* Added the struct APIClient and an unit test
* Uncrustified the unit test for category
* Added ifdef in pet.h to prevent errors
* Added one API endpoint to get a pet by id
* Added a "== 0" comparison that I forgot
* Added some kind of debug functionality to test-petApi.c
* Removed the DEBUG define
* Moved the c petstore example from samples/client/c to samples/client/petstore/c
* Renamed function getPetById to petApi_getPetById to avoid name collisions
* Removed unecessary method in list.c
* Added POST functionality; added petApi_addPet method and improved unit-test for petApi; cleaned up some code in apiClient
* removed two methods in list.c(string/tag to JSON) and moved their code directly in the pet_convertToJSON method
* Removed old, already commented out, puts artifact in apiClient.c
* Added a convertToJSON method to the category model
* Added a convertToJSON method to the tag model
* changed how the convertToJSON method works in the pet model
* Adjusted the unit-tests on how the convertToJSON method now works(now returns a cJSON* instead of a char*)
* apiClient_t now needs to be given to API methods as a parameter. This means apiClient_t can now be reused in multiple methods.
* Added an untested concept for how authentication could be handled
* Tested basicAuth using wireshark and added untested OAuth2 feature
* Added support for api key authentication using the http-header and tested functionality using wireshark
* Renamed the dataToPost parameter in apiClient_invoke to bodyParameters
* Renamed apiKey_t to keyValuePair_t and implemented GET queries
* Spaces are now being replaced with + in querryParameters
* Renamed assembleHeader to assembleAPIKeyAuthentication and added support to change the request type
* Implemented the option to provide custom httpHeader fields to apiClient_invoke
* Added support for form parameters to the apiClient_invoke method
* update petstore sample
* update go generated code comment
* update samples for go petstore
* update code generation comment
* update samples for go petstore
* Trigger CI due to previous Shippable race condition
* add -DwithGoCodegenComment=true option
* reset samples
* add withGoCodegenComment=true to bin/go-petstore-withxml.sh
* update samples/.../go-petstore-withXml using -DwithGoCodegenComment=true