Commit Graph

2223 Commits

Author SHA1 Message Date
Sebastiano Miano
e66eceeaaa [C++] Server Stub Code Generator based on Pistache (#5838)
* Added C++ generator for Pistache

* Revert of CodegenOperation

* Updated template

* Removed isRestful from method declaration

* Updated httpMethod variable

* Changed isRestfulCreate
2017-06-14 22:40:00 +08:00
wing328
d6c717263c [Python] add project name to setup.py in python client (#5836)
* add project name to setup.py in python client

* update python README to use project name

* add cli option project name for python
2017-06-14 00:18:54 +08:00
Alex Chauvin
b61dfefa5b serverPort add from cli (#5821)
in order to change the serverPort from the codegen cli
2017-06-13 15:57:55 +08:00
mmosemmle
62db9a09ee Fix issue 5793 (#5794)
* cast character to string.

* Check if variable name is reversed.

* Guard against reservedWordsMappings.
2017-06-11 22:06:19 +08:00
Jim Schubert
dabf01c3fa [kotlin] support collection format multi (#5792)
* [kotlin] support collectionFormat:multi

Adds "multi" support to collections.

Also changes generic lists (List<T>) to arrays. Generic lists and nested
lists can be problematic and require customized json factories. The
previous implement appeared to work because the results in the test were
LinkedHashMap with count greather than 0. The functional test has been
updated to force serialization and verify the results.

* [kotlin] Regenerate sample

* [kotlin] Update model test for Array changes
2017-06-09 15:40:18 +08:00
harishchoragudi
2d008be181 Fix for issue#5788 -CPPRest generated models are not using inheritance as specified in contract (#5791)
* fixed map to use value instead of mapentry while doing fromJson.

* cpprest models now use inheritance properly instead of always extending from ModelBase

* cpprest models now use inheritance properly instead of always extending from ModelBase

* removed a sysout used for debugging

* toJson() and fromJson() now leverages parent class's corresponding methods

* virtual is not needed as override essentially does the same thing.

* added docstring for getModelByName

* corrected the javadoc

* fixed @param issue in javadoc

* fixed @param uncapitalized P in param in javadoc
2017-06-09 01:41:20 +08:00
Romain d'Alverny
73f5266596 [Swift3] Set more liberal Swift3 decoder, behind lenientTypeCast option (#5795)
* [Swift3] Add lenientTypeCast option

When set to true, this generates a client JSON decoder
that will accept and cast mistyped values.

Here:
 - String => Bool ("true" instead of true),
 - String => Int ("123" instead of 123),
 - NSNumber => String (123 instead of "123").

The point is to allow the same client code to handle several
server implementations that may (sadly) not be up to spec,
or still be "evolving".

The conversion is not guaranteed if the input

Not a perfect/complete solution, not sure if it should be
activated along other casts, so kept behind an option.

* Update Petstore client code
2017-06-08 09:10:21 +08:00
Julien - JuH
9f81aa4bfc StaticHtml2Gen | Speed up appDescription rendering (#5722) 2017-06-07 18:35:17 +08:00
Jim Schubert
bc8fe0fd03 [csharp] date proper format (#5734)
* [csharp] Honor Swagger/OpenAPI 'date' format

Per spec
(https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types),
DateTime instances defined as 'date' datatype need to be serialized as
defined by full-date - RFC3339, which has the format:

full-date       = date-fullyear "-" date-month "-" date-mday

ref:
https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14

see #5513
see #5531

* [csharp] Regenerate sample

* [csharp] Include date format test
2017-06-05 00:57:00 +08:00
davidgri
00f2dc422d Issue5613 (#5616)
* Fixed Issue5162 consumes in GET-Methods

* Fixed Issue5613

* Ran the shell scripts under bin

* Tab removed
2017-06-05 00:38:43 +08:00
sdoeringNew
ffc0d32b9c #5712 put @JsonValue to appropriate place in generated enum, add TypeAdapter for Gson enums, enhance tests (#5713) 2017-06-02 16:03:32 +08:00
stkrwork
b53a668517 [C++] Restbed Server Stub Code Generator (#5742)
* - Added Restbed Generator

* - Added Json processing functions to model
- Removed unnused code from restbed codegen class
- Added response header processing to api template

* Changed it to respect alphabetical order

* Made the string joining java 7 compatible

* Added samples
2017-06-02 14:40:07 +08:00
Jonathan Leitschuh
d6f2424152 Fix spring generated controller annotations only generating for first return type (#5399)
Fixes the spring java code generator so that the ApiResponse fields are populated correctly
on the controller.

Related to #4693
2017-05-31 17:27:32 +08:00
wing328
6473949737 Merge branch 'kotlin-api-model-docs' of https://github.com/jimschubert/swagger-codegen into jimschubert-kotlin-api-model-docs 2017-05-31 00:28:08 +08:00
Jim Schubert
23cf641e8a Kotlin client lists (#5729)
* [kotlin] array->List instead of Array

Serialization to/from primitive arrays can cause issues with valid
responses. This commit considers swagger 'array' types as 'List' which,
although not as memory efficient should provide a cleaner interface for
users (and avoid serialization issues).

Also, updates README.md to list new generator and excludes
folder at samples/client/kotlin/bin/, which is not used.

* [kotlin] Move sample under conventional directory

samples/client/kotlin/ -> samples/client/petstore/kotlin/

Updated new.sh to generate client/server/docs into similar structure.
Current documentation generators (cwiki, html, html.md, html2) aren't
following a convention like client/server generators.
2017-05-31 00:18:37 +08:00
Jim Schubert
87265d9ac7 [kotlin] api/model docs
This commit adds Api/Model/Auth documentation to the generated
README.md. Because auth support is not yet fully implemented (users can
manually set default headers globally), there aren't examples for helper
auth methods.

Models with inline enums document allowed values rather than pointing to
a generated enum class.

Two global additionalProperties were added (generateApiDocs,
generateModelDocs) to allow templates to conditionally display
documentatoin depending on these mutually exclusive settings. All
current generators supporting docs will attempt to link to generated
models when only api docs are specified.

This also moves the $@ bash parameter in bin/kotlin-client-petstore.sh
to the end of the args variable. This is because $@ can only be used to
pass System properties like -DdebugModels, can can already be passed as:

JAVA_OPTS="$JAVA_OPTS -DdebugModels" ./bin/kotlin-client-petstore.sh

By moving the $@ to the end of the args, it allows us to pass additional
properties and other switches directly to the script.
2017-05-29 22:12:55 -04:00
Jim Schubert
d6a98fa444 Kotlin client (#5727)
* Add new.sh helper script to create generator files

* [kotlin] Initial Kotlin client generator

* [kotlin] Generate sample

* [kotlin] Sample helper files not needed for generation, but for sample evaluation
2017-05-30 00:38:15 +08:00
wing328
b84769d1e3 fix enum float value in C#, minor format fix in doc (#5726) 2017-05-29 22:16:42 +08:00
wing328
3df5b6f303 [Java] Fix float enum value by adding "f" (#5724)
* fix java float enum value

* update java petstore samples

* add comment explaining the fix
2017-05-29 19:34:04 +08:00
wing328
ef35b80bd8 Fixed missing isWildcard method used in templates 2017-05-29 11:45:28 +08:00
René Winkelmeyer
3d97d83f7a Apex update for NamedCredentials and Salesforce DX (#5717)
* Added mustache file for namedCredentials

* Removed Basic and OAuth from Apex API in favor of NamedCredentials

* Moved old README to README for ant deployment

* Added SFDX OSS descriptor

* Removed remoteSite mustache

* Changed package.xml from RemoteSite to NamedCredential

* Update ApexClientCodegen to support SFDX and namedCredentials

* Created initial README for Salesforce DX

* Ran Petstore test for Apex commit

* Fixed error in README mustache
2017-05-29 11:16:06 +08:00
wing328
4d705081c8 [PHP] Fix broken links in the auto-generated documentation (#5715)
* remove trailing space in cpprest, update samples

* remove unused pom.xml in go pestore

* fix broken links in php api doc by fixing baseType

* fix csharp api doc

* fix php examples

* fix examples for abstract php generator
2017-05-26 21:47:49 +08:00
Takuro Wada
a2240ac619 [htmlDocs2] inconsistent python method name between html2 and python generator (#5711) 2017-05-26 17:24:06 +08:00
Svarog
84df23f025 Made httpMethod in curl example actually upper case in html2 to support firefox (#5558) (#5705) 2017-05-26 17:19:09 +08:00
wing328
b024288df2 JS ES6 enhancements 2017-05-24 16:50:32 +08:00
Dinuka De Silva
ca139ffc05 Gh-4044: Enabling ES6 in javascript client (#5593)
* gh-4044: Added useES6 as an option for javascript templates

* gh-4044: Enabled ES6 in `javascript/api.mustache`

* gh-4044: Enabled ES6 in `javascript/ApiClient.mustache`

* gh-4044: Enabled ES6 in `javascript/enumClass.mustache`

* gh-4044: Added useES6 cli option to `javascript` clients and updated the test cases

* gh-4044: Enabled ES6 in `javascript/index.mustache`

* gh-4044: Enabled ES6 in `javascript` model templates
* `javascript/model.mustache`
* `javascript/partial_model_generic.mustache`
* `javascript/partial_model_enum_class.mustache`
* `javascript/partial_model_inner_enum.mustache`

* gh-4044: Separated `javascript-es6` templates to another folder

* gh-4044: Updated `javascript-es6/index.mustache`

* gh-4044: Enabled ES6 in `javascript-es6/api_doc.mustache`

* gh-4044: Added required dependencies for ES6

* gh-4044: Updated Supportig files for ES6 and non ES6

* gh-4044: Added test scripts to verify `javascript` useEs6 option

* gh-4044: Commented `javascript-es6` scripts due to the permission issues.
2017-05-24 16:35:54 +08:00
kirpit
e12b22d5ce Implement generating interfaces option for api resources, closes #5453. (#5519)
* Implement generating interfaces option for api resources, closes swagger-api/swagger-codegen#5453.

This commit introduces another _system property_ for typescript-angular2, called `withInterfaces` that is default to `false`. You can activate this flag by:

```
java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate \
-i http://petstore.swagger.io/v2/swagger.json \
-l typescript-angular2 -o samples/server/petstore/springboot/typescript-angular2 \
-D withInterfaces=true
```

If set to `true`, generated api resource classes will be implemented with their interfaces in separate files.

This change should not break and change the behaviour even though `withInterfaces` flag set to `true`. You are also welcome to create your own custom resource class by implementing those generated interfaces as they support defining new attributes with `[others: string]: any;` signature.

* Fix unit test for typescript/angular2 client options for "withInterfaces"

* Use double quote to follow coding standard

* Respect interface naming convention for typescript/angular2

 Create respectful interface names that ends with `Interface` suffix, instead of prefixing with `I` according to typescript naming convention. This is also consistent with their file names that also ends with `Interface.ts`.

 Also fixes the merge conflicts.

* Have better explanation for the `withInterfaces` system config
2017-05-23 21:40:21 +08:00
wing328
82740de5a0 Merge branch 'master' of https://github.com/christof-vollrath-bild-de/swagger-codegen into christof-vollrath-bild-de-master 2017-05-23 17:57:54 +08:00
René Winkelmeyer
9f1c3e3e50 Updated default Apex API version to v39 (Spring '17 release) (#5678) 2017-05-21 16:04:37 +08:00
wing328
8314f4e78a Add removeOperationIdPrefix option (#5674)
* add removeOperationIdPrefix option

* remove removeOperationIdPrefix from cli option for generators
2017-05-21 01:28:06 +08:00
wing328
7edf744426 [Apex] add petstore samples, shell scripts, batch files (#5672)
* add apex petstore samples, shell scripts, batch files

* add wording "beta" to Apex help
2017-05-20 01:02:08 +08:00
wing328
a0482a4038 Add support for Apex API client (#5669)
* Salesforce Apex support

* typo in function name

* comments for clarification

* DoubleProperty and FloatProperty are both DecimalProperty

* test models with default and provided example property values

* adding some more default example values
2017-05-19 23:18:52 +08:00
David Biesack
632a2e3949 Fix #5653 so body parameter schema link matches model anchor (#5655)
* Sync with upstream/master

* Fix for issue #5653

Override the toModelName(String name) [from DefaultCodegen] in StaticHtmlGenerator to return `name` unmodified
so that the anchors for models and the href for body parameters match case (do not convert model names to TitleCase.

* Revert "Fix for issue #5653"

This reverts commit 5472aa10a3101ea5dd417bc509c5d9c5351a3d66.

* Fix for issue #5653

Override the toModelName(String name) [from DefaultCodegen] in StaticHtmlGenerator to return `name` unmodified
so that the anchors for models and the href for body parameters match case (do not convert model names to TitleCase.
2017-05-18 15:16:42 +08:00
wing328
0a67696de8 Merge branch 'empty_classes' of https://github.com/bbdouglas/swagger-codegen into bbdouglas-empty_classes 2017-05-16 17:51:42 +08:00
wing328
63facc0b0b add null/nil as reserved keyword (#5647) 2017-05-16 00:02:27 +08:00
mtakaki
9c46ab2599 Fixing import-mappings and using it when generating API stub. #2502 (#5373) 2017-05-14 22:26:02 +08:00
René Pfeuffer
54febc38e6 #5615 [Java] recognize 'null' as a reserved keyword (#5617) 2017-05-14 11:59:13 +08:00
wing328
fd3cae6c4b rename .swagger folder to .swagger-codegen 2017-05-09 17:07:45 +08:00
Jim Schubert
f25a7575d3 [generator] Adds a .swagger/VERSION file for all generators (#5556) 2017-05-09 16:59:48 +08:00
Takuro Wada
a81cff0ed0 [typescript-angular2] change OpaqueToken to InjectionToken<string> (Issue #5565) (#5569)
* change OpaqueToken to InjectionToken<string> and add useOpaqueToken option for typescript-angular2 (#5565)

* run security shell
2017-05-08 18:08:54 +08:00
Mike Kistler
b62928ff88 Set name for item property from 'x-item-name' annotation if present. (#5461) 2017-05-05 16:53:16 +08:00
Jim Schubert
8e6dfce83e [csharp2] Extend generator from AbstractCSharpCodegen (#5552)
* [csharp2] Extend generator from AbstractCSharpCodegen

* [csharp2] regenerate sample
2017-05-05 15:58:01 +08:00
Ravi
f101a43b9e [C++][CppRest] Add CMake file template to generate CMakeLists build file (#5561)
* Add operationId in exception message

* add number data type mapping

* removing mergetool lines

* first draft of cmake file

* compiles generated source files with 64 bit cpprest and boost

* using glob recurs to add source files

* using glob recurse for source files

* cmake to build statuc library

* add cmake style comments, use project source dir and lib

* fix_issue5488: Add supporting files and source files separately

* fix_issue5488: Add supporting files and source files separately

* fix_issue5488: Add supporting files and source files separately

* fix_issue5488 - updated header comments

* updated samples
2017-05-05 15:47:39 +08:00
Jim Schubert
9dab57c2fb [csharp] warn on use of invokerPackage (#5551) 2017-05-04 19:12:54 +08:00
wing328
a7e42ee2b6 add validatable flag for .net 3.5 (#5544) 2017-05-03 21:32:25 +08:00
Benjamin Douglas
c2a1720972 Fix hasMore field and order consistency of authMethods (#5516)
The hasMore field of the global authMethods was broken due to sorting after
setting that field. The sort order for per-operation authMethods was not
guaranteed to be consistent across runs because it didn't do sorting. This
change fixes those issues by always sorting and setting the hasMore field
post-sort.
2017-05-01 15:26:35 +08:00
sabras75
994e4fd8ff Fix#5481 (#5499)
* Add CPP_NAMESPACE option

* update mustache template to exploit cppNamespace option

* update sample files

* correction : missing namespace replacement in template
2017-04-28 22:19:37 +08:00
Daniel Woodel
bfae01cd35 [swift3] Swift3 code generator & templates fixed to support additional properties, updated petstore for CI (#5407) 2017-04-28 01:58:54 +08:00
wing328
42a5a13fef [Java][Spring] Fix spring cloud client due to enhancement in adding server example responses. (#5497)
* add use spring cloud client option

* uncomment spring cloud client test

* remove scala-related tests from pom.xml for circleci

* fix mismstach tag
2017-04-27 20:00:56 +08:00
wing328
58db6a5e14 Revert "Issue#5376- changes to include swagger version in generated api files (#5449)" (#5489)
This reverts commit 702f193f61.
2017-04-26 17:53:36 +08:00