For example, when an operation's tag is "users-api", "users_api" or
"UsersApi", generate the api file named users_api.clj and "users-api"
as the namespace (it was "usersapi.clj" and "usersapi" before).
To implement this, I have to move the "sanitizeTag" method from
DefaultGenerator.java to DefaultCodegen.java so that its behaviour can
be overridden in ClojureClientCodegen.java, which is needed as the
default implementation would sanitize "users-api" to "usersapi" before
the tag is passed to "toApiName" and "toApiFilename".
This is a fix to support enums in query parameters. Enum-related information was not being stored on `CodegenParameter` previously; it is now. Test cases have been added to make sure that the enum information is being properly processed from the model.
This moves a bit of logic into a base type to prevent lots of
duplicates.
I've only converted csharp and aspnet5 generators, not csharp 2.0.
This base class should provide enough flexibility to support other C#
based client and server generators.
Things to work on:
Gaps:
* Missing swagger definition functionality:
- defaultResponse
- examples
- auth
- consumes
- produces
- nickname
- externalDocs
- imports
- security
- schema
* Resolve allParams/hasMore issue with headerParams
* Create functional test project stub
* Resolve all issues with value type return values
In this commit:
* Initial cross-platform ASP.NET 5 API server
* Hook up swagger gen via Swashbuckle and xml comment
* Build script (*nix) in project root
* Dockerfile for container deployment
This still uses retrofit 2.0.0-beta2 because the api
in beta3 has changed and the package
has been renamed to retrofit2.*
Change retrofit-rx to be a library option
Also rename the existing JAX-RS codegen to JAX-RS-Jersey1 codegen, since
JAX-RS is only a specification. Jersey and CXF are both an
implementation of the JAX-RS specification.
This change is inline with Microsoft's recommended guidelines for
collects
(https://msdn.microsoft.com/en-us/library/dn169389(v=vs.110).aspx).
Added generator options for csharp to:
* useCollection: Deserialize responses into and return Collection<T>
* returnICollection: For List<T> or Collection<T>, return ICollection<T>
instead of the concrete type
As a consequence of useCollection, method imputs will also change to
Collection<T>.