update js code gen to handle different type, format

This commit is contained in:
wing328
2016-04-11 22:20:30 +08:00
parent 68cb030609
commit 0e1f1606cd
29 changed files with 405 additions and 45 deletions

View File

@@ -48,7 +48,6 @@
'test_api_key_query': {type: 'apiKey', 'in': 'query', name: 'test_api_key_query'},
'petstore_auth': {type: 'oauth2'}
};
/**
* The default HTTP headers to be included for all API calls.
* @type {Array.<String>}

View File

@@ -169,7 +169,7 @@
/**
* Find purchase order by ID
* For valid response try integer IDs with value &lt;= 5 or &gt; 10. Other values will generated exceptions
* For valid response try integer IDs with value &lt;&#x3D; 5 or &gt; 10. Other values will generated exceptions
* @param {String} orderId ID of pet that needs to be fetched
* data is of type: {module:model/Order}
*/

View File

@@ -172,7 +172,7 @@
/**
* Get user by user name
*
* @param {String} username The name that needs to be fetched. Use user1 for testing.
* @param {String} username The name that needs to be fetched. Use user1 for testing.
* data is of type: {module:model/User}
*/
this.getUserByName = function(username) {

View File

@@ -1,16 +1,16 @@
(function(factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['./ApiClient', './model/Animal', './model/Cat', './model/Category', './model/Dog', './model/InlineResponse200', './model/Model200Response', './model/ModelReturn', './model/Name', './model/Order', './model/Pet', './model/SpecialModelName', './model/Tag', './model/User', './api/PetApi', './api/StoreApi', './api/UserApi'], factory);
define(['./ApiClient', './model/Animal', './model/Cat', './model/Category', './model/Dog', './model/FormatTest', './model/InlineResponse200', './model/Model200Response', './model/ModelReturn', './model/Name', './model/Order', './model/Pet', './model/SpecialModelName', './model/Tag', './model/User', './api/PetApi', './api/StoreApi', './api/UserApi'], factory);
} else if (typeof module === 'object' && module.exports) {
// CommonJS-like environments that support module.exports, like Node.
module.exports = factory(require('./ApiClient'), require('./model/Animal'), require('./model/Cat'), require('./model/Category'), require('./model/Dog'), require('./model/InlineResponse200'), require('./model/Model200Response'), require('./model/ModelReturn'), require('./model/Name'), require('./model/Order'), require('./model/Pet'), require('./model/SpecialModelName'), require('./model/Tag'), require('./model/User'), require('./api/PetApi'), require('./api/StoreApi'), require('./api/UserApi'));
module.exports = factory(require('./ApiClient'), require('./model/Animal'), require('./model/Cat'), require('./model/Category'), require('./model/Dog'), require('./model/FormatTest'), require('./model/InlineResponse200'), require('./model/Model200Response'), require('./model/ModelReturn'), require('./model/Name'), require('./model/Order'), require('./model/Pet'), require('./model/SpecialModelName'), require('./model/Tag'), require('./model/User'), require('./api/PetApi'), require('./api/StoreApi'), require('./api/UserApi'));
}
}(function(ApiClient, Animal, Cat, Category, Dog, InlineResponse200, Model200Response, ModelReturn, Name, Order, Pet, SpecialModelName, Tag, User, PetApi, StoreApi, UserApi) {
}(function(ApiClient, Animal, Cat, Category, Dog, FormatTest, InlineResponse200, Model200Response, ModelReturn, Name, Order, Pet, SpecialModelName, Tag, User, PetApi, StoreApi, UserApi) {
'use strict';
/**
* This is a sample server Petstore server. You can find out more about Swagger at &lt;a href=\&quot;http://swagger.io\&quot;&gt;http://swagger.io&lt;/a&gt; or on irc.freenode.net, #swagger. For this sample, you can use the api key \&quot;special-key\&quot; to test the authorization filters.<br>
* This is a sample server Petstore server. You can find out more about Swagger at &lt;a href&#x3D;\&quot;http://swagger.io\&quot;&gt;http://swagger.io&lt;/a&gt; or on irc.freenode.net, #swagger. For this sample, you can use the api key \&quot;special-key\&quot; to test the authorization filters.<br>
* The <code>index</code> module provides access to constructors for all the classes which comprise the public API.
* <p>
* An AMD (recommended!) or CommonJS application will generally do something equivalent to the following:
@@ -66,6 +66,11 @@
* @property {module:model/Dog}
*/
Dog: Dog,
/**
* The FormatTest model constructor.
* @property {module:model/FormatTest}
*/
FormatTest: FormatTest,
/**
* The InlineResponse200 model constructor.
* @property {module:model/InlineResponse200}

View File

@@ -0,0 +1,153 @@
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['../ApiClient'], factory);
} else if (typeof module === 'object' && module.exports) {
// CommonJS-like environments that support module.exports, like Node.
module.exports = factory(require('../ApiClient'));
} else {
// Browser globals (root is window)
if (!root.SwaggerPetstore) {
root.SwaggerPetstore = {};
}
root.SwaggerPetstore.FormatTest = factory(root.SwaggerPetstore.ApiClient);
}
}(this, function(ApiClient) {
'use strict';
/**
* The FormatTest model module.
* @module model/FormatTest
* @version 1.0.0
*/
/**
* Constructs a new <code>FormatTest</code>.
* @alias module:model/FormatTest
* @class
* @param _number
*/
var exports = function(_number) {
this['number'] = _number;
};
/**
* Constructs a <code>FormatTest</code> from a plain JavaScript object, optionally creating a new instance.
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @param {module:model/FormatTest} obj Optional instance to populate.
* @return {module:model/FormatTest} The populated <code>FormatTest</code> instance.
*/
exports.constructFromObject = function(data, obj) {
if (data) {
obj = obj || new exports();
if (data.hasOwnProperty('integer')) {
obj['integer'] = ApiClient.convertToType(data['integer'], 'Integer');
}
if (data.hasOwnProperty('int32')) {
obj['int32'] = ApiClient.convertToType(data['int32'], 'Integer');
}
if (data.hasOwnProperty('int64')) {
obj['int64'] = ApiClient.convertToType(data['int64'], 'Integer');
}
if (data.hasOwnProperty('number')) {
obj['number'] = ApiClient.convertToType(data['number'], 'Number');
}
if (data.hasOwnProperty('float')) {
obj['float'] = ApiClient.convertToType(data['float'], 'Number');
}
if (data.hasOwnProperty('double')) {
obj['double'] = ApiClient.convertToType(data['double'], 'Number');
}
if (data.hasOwnProperty('string')) {
obj['string'] = ApiClient.convertToType(data['string'], 'String');
}
if (data.hasOwnProperty('byte')) {
obj['byte'] = ApiClient.convertToType(data['byte'], 'String');
}
if (data.hasOwnProperty('binary')) {
obj['binary'] = ApiClient.convertToType(data['binary'], 'String');
}
if (data.hasOwnProperty('date')) {
obj['date'] = ApiClient.convertToType(data['date'], 'Date');
}
if (data.hasOwnProperty('dateTime')) {
obj['dateTime'] = ApiClient.convertToType(data['dateTime'], 'String');
}
}
return obj;
}
/**
* @member {Integer} integer
*/
exports.prototype['integer'] = undefined;
/**
* @member {Integer} int32
*/
exports.prototype['int32'] = undefined;
/**
* @member {Integer} int64
*/
exports.prototype['int64'] = undefined;
/**
* @member {Number} number
*/
exports.prototype['number'] = undefined;
/**
* @member {Number} float
*/
exports.prototype['float'] = undefined;
/**
* @member {Number} double
*/
exports.prototype['double'] = undefined;
/**
* @member {String} string
*/
exports.prototype['string'] = undefined;
/**
* @member {String} byte
*/
exports.prototype['byte'] = undefined;
/**
* @member {String} binary
*/
exports.prototype['binary'] = undefined;
/**
* @member {Date} date
*/
exports.prototype['date'] = undefined;
/**
* @member {String} dateTime
*/
exports.prototype['dateTime'] = undefined;
return exports;
}));

View File

@@ -23,6 +23,7 @@
/**
* Constructs a new <code>Model200Response</code>.
* Model for testing model name starting with number
* @alias module:model/Model200Response
* @class
*/

View File

@@ -23,6 +23,7 @@
/**
* Constructs a new <code>ModelReturn</code>.
* Model for testing reserved words
* @alias module:model/ModelReturn
* @class
*/

View File

@@ -23,12 +23,14 @@
/**
* Constructs a new <code>Name</code>.
* Model for testing model name same as property name
* @alias module:model/Name
* @class
* @param name
*/
var exports = function() {
var exports = function(name) {
this['name'] = name;
};