184 Commits

Author SHA1 Message Date
manuc66
a41e8bed97 [csharp] Support inheritance instead of duplicating parent properties in derived classes (#5922)
* [csharp] Explicitly set supportsInheritance

* [csharp] set supportsInheritance for client

This includes supportsInheritance only for the client codegen at the
moment, because setting in AbstractCSharpCodegen would require the
change to be tested in all derived generators, possibly including
similar template changes to this commit's.

* include nice improvement of https://github.com/jimschubert/swagger-codegen/tree/csharp/3829 and leverage https://github.com/manuc66/JsonSubTypes for subtype deserialization

* remove duplicate base validations

* remove useless tests

* restore documentation for properties coming from parent

* launch bin/security/csharp-petstore.sh

* it's impossible to call an explicitly implemented interface-method on the base class
(https://stackoverflow.com/questions/5976216/how-to-call-an-explicitly-implemented-interface-method-on-the-base-class)

* restore portion of code that was lost

* regenerate more

* fix missing using

* take the multi .net compatible revision

* keep generated model simple when no hierarchy involved

* regenerate with:
- bin/csharp-petstore-all.sh && bin/security/csharp-petstore.sh
- bin/csharp-dotnet2-petstore.sh && bin/csharp-petstore.sh && bin/csharp-petstore-netcore-project.sh && bin/csharp-petstore-net-standard.sh && bin/csharp-property-changed-petstore.sh

* fix sln indentation and the missing windows runner for dotnet2

* fix inheritance GetHashCode and Equals

* override instead of hiding the base method
+ fix the csharp-property-changed-petstore.bat

* By default the value of the discriminator property must be the name of the current schema

* Add test for subtype deserialisation from parent type

* add missing '.bat' and use the 'call' template from javascript-petstore-all.bat

add missing file to trigger it on windows

* fix default value bug

* cleanup copyright information

* formatting after merge

* fix merge

* applying bin/csharp-petstore-all.sh

* applying bin/security/csharp-petstore.sh
2017-09-06 17:22:20 +08:00
Jon Schoning
c7d145a4ba add haskell-http-client-generator (#6429) 2017-09-06 00:33:48 +08:00
wing328
a4c0975aa4 [R] Add new R client generator (#6351)
* add r client codegen

* update r api, model templates

* various fix

* rename Json to JSON

* more enhancements

* fix json handling

* add file upload support, var name to handle hyphen

* use httr::upload_file
2017-09-04 00:21:32 +08:00
wing328
d8fcedadbe rename ts angular batch files 2017-08-28 18:45:17 +08:00
Isman Usoh
3ecc374682 [Typescript-Fetch] Support additionalproperties, Enum, Auth and more. (#6130)
* Support additionalproperties and more.
- Upgrade to TypeScript 2
- Use type definition from npm instead of typings, typings is deprecation
- Use Enum instead of String Literal Types
- Use typescript es6 lib for target es5
- Support additionalproperties
- Support JSDoc
- Add snapshot and npmRepository option
- Update typescript-fetch run script for linux
- Create typescript-fetch run script for windows

* Update and fix
- Fix circle run script
- Fix duplicate query parameter

* Rename typescript-fetch folder to lowercase

* Fix for review and update new line end of file

* Fix end of file

* rename script to {lang}-petstore-all.sh and fix test

* Fix override query string
https://stackoverflow.com/a/7517673/1077943
2017-08-25 23:26:32 +08:00
wing328
06686d65fa [Lua] Add new Lua client generator (#6252)
* 1st commit of lua generator

* add petstore sample

* various fixes based on feedback

* better return handling

* check status code 1st letter

* add support for query parameters, auth, body param

* more fixes based on daurnimator feedback

* more fixes based on daurnimator feedback

* fix a few more issues found by luac -p

* use lower case for http header key name

* more fixes based on feedback

* update lua sample

* skip auto-generated readme, doc, test files

* use tab instead of 2-space

* fix container return type

* fix cast method call

* fix cast function call
2017-08-11 01:41:29 +08:00
wing328
4cb7f1d613 [Rust] add new Rust client generator (#6105)
* add rust generator (1st release)

* update based on feedback

* fix reserved keyword

* fix string parameter

* Convert String to &str in trait definition

* Only pass pathParams to uri builder

* Fixed the html escaping in return type

* Fixed the hashmap constructor

* Added models into API scope

* removed models subimport, reference from super

* update returntype in method signature

* Fixed the remaining templates inconsistencies

* Fixed issues that floated up in kubernetes swagger file

* add hash support, fix docstring

* fix map parameter, update api.mustache

* use baseName for parameter

* use fully-qualfiied model name

* add rust tests

* fix test cases

* Rust gen slightly more idiomatic (#6247)

* Go -> Rust in README

* Remove leftover go file in rust sample

* rust: Regenerate sample

* rust: Rename *Impl -> *Client

* rust: one-line use line

More in line with common style

* rust: Replace tabs (in java) with 4 spaces

* Added trivial getter implementation (#6249)

* update rust petstore samples
2017-08-06 16:59:08 +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
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
wing328
2502c376a4 add batch files for python flask 2017-07-17 15:28:15 +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
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
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
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
bec6eaa9dc minor fix to output path in javascript-es6-petstore.bat 2017-07-03 21:25:16 +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
wing328
e08e9cfefe set useES6 in all JS scripts/batch files 2017-06-23 22:22:05 +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
wing328
8d0c7128b0 add option to specify c# client path in powershell generator (#5887) 2017-06-21 00:58:29 +08:00
wing328
e53b3a03aa [PowerShell] Add PowerShell API client generator (WIP) (#5789)
* add powershell generator (wip)

* minor fix to api template

* rename model files

* Powershell generator fix (#11)

* Fix typo

pacakge -> package

* Add missing `petstore` subfolder to $ClientPath

* Resolve $ClientPath to absolute path

Start-Process needs WorkingDirectory to be absolute

* Fix spaces in variable name

${ somevar } is a vairable that literally has spaces in name. We need to
temporarily redifine mustache delimiters so we can generate var. names
without spaces.

* Fix typo

Remove stray `r`

* Fix *.ps1 import in module

Directory structure has changed + we should export functions using
manifest.

* Remove erroneous file

* various fixes and enhancements

* remove nullable for string

* change function name based on feedback by beatcracker

* set index to start at 0

* fix file type

* Powershell generator fix 1 (#12)

* Add closing curly brace

* Fix duplicated '['

* Get FunctionsToExport using AST

Discussion: swagger-api/swagger-codegen#5789

* add guid option to powershell generator

* add test files, remove docs

* fix array of items

* clean up powershell comment, update model/api test files
2017-06-20 22:20:05 +08:00
Paŭlo Ebermann
ec448a6167 [CLI] #5147: make -D work like system properties (#5191)
* Issue #5147: allow empty values for properties.

* Issue #5147: Allow multiple `-D` options.

* Issue #5147: take advantage (and demonstrate) the new usage of -D.

* Issue #5147: also update windows script and security ones.
2017-06-16 17:29:44 +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
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
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
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
5b250aa18f add warning message to window batch file 2017-05-15 16:11:51 +08:00
wing328
0792933c7e use petstore.yaml instead of petstore.json in windows batch files 2017-04-28 19:49:39 +08:00
wing328
e8feca2753 [Android] add windows batch, better code foramt (#5496)
* remove trailing space in cpprest, update samples

* add android batch files, better code format, sync petstore.json with
petstore.yaml

* restore petstore.json and sync it to petstore.yaml

* update circleci pom.xml

* add new android files

* add new android files
2017-04-27 17:58:38 +08:00
nikitozz
80dccfe395 The new .NET project file format support (#5439) 2017-04-25 10:22:59 +08:00
wing328
7acd0cfa4d add csharp batch files 2017-04-23 15:42:42 +08:00
Paŭlo Ebermann
9875855f63 [ASP.NET] Issue #5196: add packageGuid parameter to AspNetCoreServerCodegen. (#5199)
* Issue #5196: add packageUid parameter to AspNetCoreServerCodeGen.

* Change .bat file, too.
2017-03-27 13:20:24 +08:00
Paŭlo Ebermann
06ce5ff865 [C#] Issue #5196: make package GUID non-random for the C# samples. (#5198)
* Issue #5196: make package GUID non-random for the C# samples.

* Also change the .bat files for C#.
2017-03-27 11:43:00 +08:00
Gronsak
580745ef43 [C#] Adding support for generating .NET Standard 1.3 client library (#4955)
* [CsharpNetStandard] Added C# .NET Standard Client Generation

Added language CsharpNetStandard.
Everything copied from csharp Client Generator.
Dependancies switched from Restsharp to Restsharp.Portable.
Changes made where nececary to replicate Restsharp functionallity.
Project type changed to .NET Standard protable library.

* [CsharpNetStandard] Removed client prop validation due to incompability

* [CsharpNetStandard] Minor fixes

Changed leftover RestSharp.Method to Method
Changed to .Net Standard 1.3 for compability reasons
Changed excludeTests to default to true due to tests not being implemented yet

Removed unnecessary targetFramework property
Removed leftover UWP stuff

* [CsharpNetStandard] More fixes

Added correct dependencies to Readme
Added correct supported frameworks to Readme
Added slightly better placeholder for installation instructions in Readme

Removed leftover dependencies from project.json
Removed leftover SupportsAsync stuff
Removed references to build.bat/-.sh since they're not yet being generated

Todo implement test generation

* [CsharpNetStandard] Added forgoten git_push.sh

* [C#-netstandard] Renamed option to csharp-netstandard

Also added .bat file for test generation

* [C# Net Standard] fixed path in .bat file

* [C# NET Standard] fixes to enum generation

Fixed issues with enum generation due to tired programmer

* [C# NET Standard] Generated sample client library

Sample library generated

Fixes:
Class actually works again
.bat - minor inconsistency fixed

* [C# NET Standard] Error corrected in how timeout is set

Configuration Timeout property changed to TimeSpan type and code corrected around that

* [C#] Merged .NET Standard generator into csharp generator

Functionallity of csharp-netstarndard generator has been moved into standard csharp generator under the targetFramework option as "v5.0"
2017-03-20 17:21:44 +08:00
wing328
6c2304ace5 add petstore sample for jaxrs-cxf-client, update travis ci (#5111) 2017-03-18 22:48:38 +08:00
Paŭlo Ebermann
426660206d Fix sample script to set the correct artifact ID in the generated POM (#5094)
* Update samples for akka.

* Have akka-scala-petstore scripts set the correct artifact names

* Update akka-scala samples again.
2017-03-18 16:49:46 +08:00
Jean-François Côté
20c8f9a831 Java Play Framework Server Generator (#4943)
* First commit of the Java Play Framework server generator. It is highly based on Spring so there might me a couple of things that don't make sense (like options or parameters) for the Play Framework.

* Fix suggestions in the PR discussion + add .bat and .sh file as requested.

* Updated Readme.md file

* Remove unused mustache file + fix baseName vs paramName in all the mustache files.

* Fix the compilation error when we have a body which is a list or map. Doesn't fix the problem with the annotation itself.

* Fix the problem with the Http.MultipartFormData.FilePart
2017-03-10 22:10:49 +08:00
wing328
f7b5eb85ce [Swift] add batch files for swift 2,3 to generate petstore samples (#4934)
* add bat files for swift 2,3 to generate petstore samples

* remove -t from swift3 batch file

* remove -t from swift batch files
2017-03-06 17:16:41 +08:00
wing328
9a79f13a6e new batch file to exec all JS petstore batch files 2017-01-25 16:30:33 +08:00
tharders
30315c8570 Fix Issue 4554 - handle 204 server response in javascript (#4604)
* issues 4554: Handle 204 response and handle deserialize exceptions

* issue-4554: generate javascript client updated template

Used petstore-with-fake-endpoints-models-for-testing.yaml

* use petstore-with-fake-endpoints-models-for-testing.yaml like sh script
2017-01-23 15:14:06 +08:00
wing328
2d8715f42c Minor update to ze-ph batch script
- use petstore-with-fake-endpoints-models-for-testing.yaml
- output to samples\server\petstore\ze-ph
2017-01-16 01:10:35 +08:00
Articus
4001503e63 PHP server generator ze-ph (Zend Expressive + Path Handler) (#4559)
* Server generator ze-ph (Zend Expressive + Path Handler)

* Command line scripts for new ze-ph generator
2017-01-16 01:05:04 +08:00
Martin
727038a186 Issue 3651 (#4014)
* added method summary under the method name

* added batch file for html2 generation on windows

* regenerated html2 example

* changed the html2 windows batch to use yaml instead of json and regenerated sample

* fixed encoding issues
2016-10-17 22:48:12 +08:00
Jim Schubert
c70a2a7481 [aspnetcore] Deprecating aspnet5 for aspnetcore
This moves previous aspnet5 functionality to aspnetcore, aspnet5 now
derives from the aspnetcore generator and logs a warning that it's
deprecated.

This will help resolve any confusion because ASP.NET 5 is terminology
referring to the project of around a year ago. ASP.NET Core 1.0 is the
new name for the technology, and further enhancements should target .NET
Core 1.0 rather than any old vNext or preview stuff.
2016-10-16 21:22:34 -04:00
wing328
30c2503f9f [C#][NancyFX] Better "Add" for Dictionary and using {{packageName}} for NancyFX (#3449)
* use square bucket for C# dictionary

* use packageName for nancyfx generator, update info to debug for log

* use packageName for nancyfx generator, update info to debug for log
2016-07-26 14:10:48 +08:00
wing328
d4951bbf3c Leverage Shipable.io to validate mustache templates (#3333)
* add run all petstore shell script

* add run all petstore batch file for windows tests

* better output for travis and appveyor

* add shippable config to test all petstore

* show log after test script

* remo all-petstore, update travis build

* update shiippable config

* add run-all-petstore

* failure test using ruby model

* use bash script for run-all-petstore

* update script permission

* fix html batch script

* fix missing doc in jaxrs spec generator

* fix missing api, model test in jaxrs spec generator

* rename licenseInfo for lumen

* remove ruby model failure (for CI test)

* fix "the input line is too long"

* update windows batch file to shorten the commands

* update appveyor config

* update shippable config

* add build script

* update batch file to remove args option

* fix window batch file for spring mvc/boot

* remove logging output to file
2016-07-11 13:54:18 +08:00