Commit Graph

620 Commits

Author SHA1 Message Date
ehyche 32906ea7ce Add Objective-C compatibility for Optional scalars in swift4 just as we added in swift3. (#6158)
This change adds Objective-C compatibility for Swift Optional scalars in the swift4 language just like we added in swift3 here:

https://github.com/swagger-api/swagger-codegen/pull/6129

It also adds unit tests for the swift4 language. Currently those unit tests are the same as the swift3 unit tests, but will change soon as we iterate on the swift4 language generator.
2017-08-02 21:19:48 +08:00
ehyche dd46ba9ef6 Add additional cli option and properties to swift3 for Objective-C compatibility. (#6129)
Currently, in the swift3 language, if you have an optional integer, number, or boolean property in a model, then the generated swift3 model class might look like:

class SomeModel {
    var someInt: Int?
    var someFloat: Float?
    var someDouble: Double?
    var someBool: Bool?
}

This works fine if you are accessing this model only from Swift code. However, it is very common for iOS codebases to contain both Swift AND Objective-C. If you need to access this model from Objective-C, then those 4 properties are not accessible, since Optional scalars do not translate to Objective-C.

Therefore, in the swift3 language, we want to add some code for Objective-C compatibility:

1. We add a "objCompatible" boolean command-line option. If objCompatible=true, then this enables some additional code generation to make these types of properties accessible from Objective-C. If objCompatible=false, then the generated code is exactly as it currently is. The default is objcCopmatible=false.

2. If objCompatible=true, then for these types of Objective-C-inaccessible properties (Optional scalars), then we add a "x-swift-optional-scalar=true" vendor extension in the CodegenProperty.

3. Then, in the model.mustache template, if we see x-swift-optional-scalar=true, then we add an additional computed property which returns an optional NSNumber.

So, for example, when objcCompatible=false (the default case), then the generated code for the "declawed" property of the Cat model looks like:

open class Cat: Animal {

    public var declawed: Bool?

    ...

But when objcCompatible=true, then it looks like:

open class Cat: Animal {

    public var declawed: Bool?
    public var declawedNum: NSNumber? {
        get {
            return declawed.map({ return NSNumber(value: $0) })
        }
    }

   ...
2017-08-02 18:20:01 +08:00
lopesmcc 66d48a0c71 [Java-VertX] Java Vertx client (#6204)
* #6165 - Java Vertx client

* #6165 - Java Vertx client (samples)

* #6165 - Java Vertx client (tests generation)

* #6165 - Java Vertx client (fixed test samples)
2017-07-31 20:04:11 +08:00
wing328 64658f0bea update eiffel petstore 2017-07-25 00:03:15 +08:00
Jean-François Côté bf327519b8 Add support for endpoint examples. Right now it doesn't work because {{{example}}} is always empty (#5775) 2017-07-23 22:45:30 +08:00
wing328 e916a769ca update ts script to use petstore.yaml, add
typescript-aurelia-petstore.bat
2017-07-23 16:02:34 +08:00
wing328 188e998683 add petstore samples for typescript aurelia 2017-07-23 15:52:02 +08:00
wing328 a4d67d9115 minor fix to typescript-jquery batch file 2017-07-23 02:00:53 +08:00
wing328 6c922fdae1 Squashed commit of the following:
commit b33232e52b9642e9edf724429dc99afe39d9df07
Merge: e3a1e30 3e76185
Author: wing328 <wing328hk@gmail.com>
Date:   Sun Jul 23 01:38:09 2017 +0800

    Merge branch 'add-petstore-support-typescript-jquery' of https://github.com/StingrayDigital/swagger-codegen into StingrayDigital-add-petstore-support-typescript-jquery

commit 3e76185d906d8b53cc3e7a198546b9e111a0cca4
Author: Jean-François Côté <jcote@stingray.com>
Date:   Thu Jul 20 13:50:01 2017 -0400

    Add working npm generator.

commit 5c27df7c4822fed10ddb81b8a35f60ca40b60914
Author: Jean-François Côté <jcote@stingray.com>
Date:   Fri Jul 7 14:39:39 2017 -0400

    Fix suggested by @wing328 's review

commit 41da37b3576a82ad6056434d36e9d579ef495492
Author: Jean-François Côté <jcote@stingray.com>
Date:   Wed Jul 5 15:47:40 2017 -0400

    Add petstore integration and updated sample
2017-07-23 01:39:36 +08:00
Javier Velilla fa73e56c17 Enhancements to the Eiffel generator #6057 (#6138)
Added shell scripts, batch files to generate Eiffel Petstore samples.
Added Setup CI (travis, shippable, etc) to cover the Eiffel Petstore samples.
Refactored part of the code into an Abstract Eiffel base class,
which can be later used in Eiffel server stub generators.
Added Eiffel Style guide to the contribution guidelines so that Eiffel contributors know what to follow in terms of code style
Fixed code generator issues.
Updated mustaches templates.
2017-07-22 16:55:45 +08:00
ehyche 2be2ee080b Fixes for swift4 language (#6116)
* Fix build error in Xcode 9 beta 3, as .compact is no longer defined

* Add test schema for Swift 4 and associated script and config files

* Add test app for swift4Test.json schema

* Make integer, Integer, int, and Int32 types map to Swift Int type instead of Int32 type

* Add CodingKeys to model template, which allows us to serialize/deserialize variable names that are different than property names

* Make updates to Swift 4 test schema

* Fixes for unit test app for swift4Test.json Swift 4 test schema
2017-07-20 15:45:09 +08:00
Jean-François Côté bca35f6645 Fix for issue #6094 (#6121) 2017-07-20 15:42:56 +08:00
wing328 f999936c1d [JAX-RS][RESTEasy] Add Petstore integration tests for RESTEasy EAP (java8) (#6091)
* add petstore integration tests for resteasy eap java8

* update circle pom.xml
2017-07-17 23:25:38 +08:00
wing328 2502c376a4 add batch files for python flask 2017-07-17 15:28:15 +08:00
wing328 11d9cbd597 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-16 16:10:08 +08:00
wing328 c1825b417c use html-escaped description for C# (client, server), Java server (#6061) 2017-07-14 23:36:24 +08:00
wing328 ddf9db3148 fix window batch scripts after ts angular generator rename 2017-07-14 17:45:56 +08:00
wing328 094dbd00ed Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-13 23:35:22 +08:00
Isman Usoh fdaf8ea65f [Typescript-Angular2] add @summary JSDoc tag (#6028)
* add @summary JSDoc tag

* updatee sample and create windows script for typescript-angular2

* Fix for Review
2017-07-13 23:33:08 +08:00
wing328 6b07af8d4e [TypeScript] rename Angular, Angular2 generators (#6046)
* rename ts angular, angular2, update scripts

* update angular4 script
2017-07-13 23:24:21 +08:00
wing328 e964702550 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-12 21:54:23 +08:00
mobreza 5d32edd964 Java support for application/xml (#5962)
* WIP: CodegenProperty with XML

* WIP: CodegenModel XML bits

* WIP: Jackson XML

* WIP: Java templating

* WIP: Java client withXml flag

* WIP: resttemplate work

* WIP: withXml only when Jackson is used

* WIP: Tabs to spaces

* WIP: java-petstore-resttemplate-withxml sample

* WIP: language: spring

* WIP: language "spring" using library "spring-boot" should include apiPackage in @ComponentScan to detect the API

* WIP: javax.xml for non-Jackson Java and enabled payload logging for jersey2

* WIP: updated java petstore samples

* WIP: JavaSpring with non-jackson XML

* WIP: bin/spring-all-pestore.sh
2017-07-11 17:01:51 +08:00
wing328 929627722a make java vertx shell scripts executable 2017-07-10 23:52:10 +08:00
wing328 d56b7ae037 Merge branch 'feature/java-vert.x' of https://github.com/phiz71/swagger-codegen into phiz71-feature/java-vert.x 2017-07-10 23:41:47 +08:00
wing328 247cdf273b Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-09 02:08:22 +08:00
ehyche 2ce3365eaf Add a swift4 client generator (#6010)
* Add a swift4 client generator

* Updates per review comments:

- Changed Alamofire dependency from 4.0 to 4.5
- Added "Codable", "Encodable", and "Decodable" to list of reserved words in generator
- Ran "pod update" in default, promisekit, and rxswift samples test projects
2017-07-09 01:33:52 +08:00
wing328 b852e61ee9 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-09 00:59:41 +08:00
Florent Chamfroy d044498de4 adding Vert.X Codegen
Adding the possibility to generate java Vert.X servers.
It uses Vertx-Swagger-Router project.
It can generate an Async callback version or a Rx version.
2017-07-08 16:10:07 +02:00
wing328 ed11da25fc Merge branch '2.3.0' into wing328-ts_angular2_typings 2017-07-08 19:03:31 +08:00
wing328 45eb5fffc0 add ngVersion option 2017-07-04 01:00:35 +08:00
Ryoga Kitagawa 6b40bc6d30 [Swift3] Add sample for unwrapRequired. (#5853) 2017-07-03 22:46:42 +08:00
wing328 44d112e9c6 Merge branch 'master' of https://github.com/swagger-api/swagger-codegen 2017-07-03 21:25:39 +08:00
wing328 bec6eaa9dc minor fix to output path in javascript-es6-petstore.bat 2017-07-03 21:25:16 +08:00
wing328 9a56d4560a Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-03 18:47:10 +08:00
wing328 ecf924e78f [Spring] Adds feature useOptional (#5968)
* Adds Valid annotation for request body (#4847)

If useBeanValidation is active, this change will add Valid annotation to ReqeustBody

* Adds generated samples for bean vaildation in spring boot (#4847)

* Adds feature option (#3819)

When you enable the feature useOptional the JavaSpring generator will use type Optional for non required parameters.

* Adds generated sample for #3819

* Adds generated sample for #3819

* Reverts commit for bean validation

* Adds generated sample for #3819

* Reverts commit for bean validation

* Fix alignment

* update spring samples

* update pom.xml to include spring use optional samples

* update artifactId to "spring-boot-beanvalidation"

* rpelace tab with 4-space

* check mvn task result
2017-07-03 17:40:00 +08:00
wing328 76481d1d80 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-02 22:43:08 +08:00
Paŭlo Ebermann 5de6f7b86e Change all sample-generators for typescript-angular2-* to use the YAML version. (#5859) 2017-07-02 22:32:58 +08:00
wing328 9269dac6cf Merge remote-tracking branch 'origin/master' into 2.3.0 2017-07-01 15:47:27 +08:00
wing328 b18e003d12 update petstore script usage 2017-06-29 15:32:10 +08:00
wing328 bced355191 better detection for unresolved merge conflicts 2017-06-29 13:01:40 +08:00
wing328 fd44d01d9c Merge remote-tracking branch 'origin/master' into 2.3.0 2017-06-28 18:03:28 +08:00
Paŭlo Ebermann d31d431071 #5147: allow multiple for other plural options, too (#5860)
* Issue #5147: allow multiple occurrences for other plural options, too.

* Use two --additionalProperties parameters in sample generation script.
2017-06-28 17:55:23 +08:00
wing328 cd0ec4ed71 Merge branch '2.3.0' of https://github.com/swagger-api/swagger-codegen into 2.3.0 2017-06-28 15:36:14 +08:00
wing328 e7561a11f4 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-06-28 15:35:24 +08:00
stkrwork 3c0623cce1 ApacheConfGen for HTTP Basic Authentication Proposed implementation (#5800)
* - 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

* Auto stash before merge of "master" and "origin/master"

* added missing apache2 config gen in services file

* - Added new Config Type
- Added Samples
- Added sample generating scripts
- Renamed Apache2Confgen to Apache2ConfigCodegen

* - Added Samples
- Added new config type
- Added sample generating scripts
- Renamed Apache2Confgen to Apache2ConfigCodegen
2017-06-28 02:48:53 +08:00
Tony Tam 1e2465735b [2.3.0] Update Swagger Codegen to v1.5.15 (#5929)
* updated versions

* match fix in 2.2.x branch

* updated with https://github.com/swagger-api/swagger-codegen/pull/5858/commits/73df07d64c248d7ed61b41b4a9bd00e55b6fa802

* regenerate pom.xml for jaxrs-cxf-petstore-server-annotated-base-path

* regenerate pom.xml for jaxrs-cxf-petstore-server-non-spring-application
2017-06-28 00:13:52 +08:00
wing328 b9bd221ba9 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-06-23 22:23:17 +08:00
wing328 e08e9cfefe set useES6 in all JS scripts/batch files 2017-06-23 22:22:05 +08:00
wing328 02f30a27f9 Merge remote-tracking branch 'origin/master' into 2.3.0 2017-06-23 22:09:45 +08:00
wing328 5b4e8a8ed5 [JavaScript] fix JS shell scripts, add log to show template version (#5907)
* fix JS shell script, add log to show es version

* change CLI option default value for useES6

* fix shell script in JS ES6 promise

* fix windows batch files

* set useES6 to false
2017-06-23 22:09:07 +08:00