forked from loafle/openapi-generator-original
Fixed date-time and date handling
This commit is contained in:
@@ -30,8 +30,8 @@ public class CodegenOperation {
|
||||
isResponseBinary = false, isResponseFile = false, hasReference = false,
|
||||
isRestfulIndex, isRestfulShow, isRestfulCreate, isRestfulUpdate, isRestfulDestroy,
|
||||
isRestful, isDeprecated, isCallbackRequest;
|
||||
public String path, operationId, returnType, httpMethod, returnBaseType,
|
||||
returnContainer, summary, unescapedNotes, notes, baseName, defaultResponse;
|
||||
public String path, operationId, returnType, returnFormat, httpMethod, returnBaseType,
|
||||
returnContainer, summary, unescapedNotes, notes, baseName, defaultResponse;
|
||||
public CodegenDiscriminator discriminator;
|
||||
public List<Map<String, String>> consumes, produces, prioritizedContentTypes;
|
||||
public List<CodegenServer> servers = new ArrayList<CodegenServer>();
|
||||
|
||||
@@ -2458,7 +2458,8 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
op.examples = new ExampleGenerator(schemas, this.openAPI).generateFromResponseSchema(exampleStatusCode, responseSchema, getProducesInfo(this.openAPI, operation));
|
||||
op.defaultResponse = toDefaultValue(responseSchema);
|
||||
op.returnType = cm.dataType;
|
||||
op.hasReference = schemas.containsKey(op.returnBaseType);
|
||||
op.returnFormat = cm.dataFormat;
|
||||
op.hasReference = schemas != null && schemas.containsKey(op.returnBaseType);
|
||||
|
||||
// lookup discriminator
|
||||
Schema schema = schemas.get(op.returnBaseType);
|
||||
|
||||
@@ -40,13 +40,13 @@ export class {{classname}}RequestFactory extends BaseAPIRequestFactory {
|
||||
// Query Params
|
||||
{{#queryParams}}
|
||||
if ({{paramName}} !== undefined) {
|
||||
requestContext.setQueryParam("{{baseName}}", ObjectSerializer.serialize({{paramName}}, "{{{dataType}}}"));
|
||||
requestContext.setQueryParam("{{baseName}}", ObjectSerializer.serialize({{paramName}}, "{{{dataType}}}", "{{dataFormat}}"));
|
||||
}
|
||||
{{/queryParams}}
|
||||
|
||||
// Header Params
|
||||
{{#headerParams}}
|
||||
requestContext.setHeaderParam("{{baseName}}", ObjectSerializer.serialize({{paramName}}, "{{{dataType}}}"));
|
||||
requestContext.setHeaderParam("{{baseName}}", ObjectSerializer.serialize({{paramName}}, "{{{dataType}}}", "{{dataFormat}}"));
|
||||
{{/headerParams}}
|
||||
|
||||
// Form Params
|
||||
@@ -133,7 +133,7 @@ export class {{classname}}ResponseProcessor {
|
||||
if (isCodeInRange("{{code}}", response.httpStatusCode)) {
|
||||
{{#dataType}}
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: {{{dataType}}} = ObjectSerializer.deserialize(jsonBody, "{{{dataType}}}") as {{{dataType}}};
|
||||
const body: {{{dataType}}} = ObjectSerializer.deserialize(jsonBody, "{{{dataType}}}", "{{returnFormat}}") as {{{dataType}}};
|
||||
{{#isSuccessCode}}
|
||||
return body;
|
||||
{{/isSuccessCode}}
|
||||
@@ -156,7 +156,7 @@ export class {{classname}}ResponseProcessor {
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
{{#returnType}}
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: {{{returnType}}} = ObjectSerializer.deserialize(jsonBody, "{{{returnType}}}") as {{{returnType}}};
|
||||
const body: {{{returnType}}} = ObjectSerializer.deserialize(jsonBody, "{{{returnType}}}", "{{returnFormat}}") as {{{returnType}}};
|
||||
return body;
|
||||
{{/returnType}}
|
||||
{{^returnType}}
|
||||
|
||||
@@ -17,10 +17,12 @@ import { {{classname}}RequestFactory, {{classname}}ResponseProcessor} from "../a
|
||||
export class Observable{{classname}} {
|
||||
private requestFactory: {{classname}}RequestFactory;
|
||||
private responseProcessor: {{classname}}ResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new {{classname}}RequestFactory(configuration);
|
||||
this.responseProcessor = new {{classname}}ResponseProcessor();
|
||||
private configuration: Configuration;
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: {{classname}}RequestFactory, responseProcessor?: {{classname}}ResponseProcessor) {
|
||||
this.configuration = configuration;
|
||||
this.requestFactory = requestFactory || new {{classname}}RequestFactory(configuration);
|
||||
this.responseProcessor = responseProcessor || new {{classname}}ResponseProcessor();
|
||||
}
|
||||
|
||||
{{#operation}}
|
||||
|
||||
@@ -16,9 +16,9 @@ import { Observable{{classname}} } from './ObservableAPI';
|
||||
import { {{classname}}RequestFactory, {{classname}}ResponseProcessor} from "../apis/{{classname}}";
|
||||
export class Promise{{classname}} {
|
||||
private api: Observable{{classname}}
|
||||
|
||||
public constructor(configuration: Configuration) {
|
||||
this.api = new Observable{{classname}}(configuration);
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: {{classname}}RequestFactory, responseProcessor?: {{classname}}ResponseProcessor) {
|
||||
this.api = new Observable{{classname}}(configuration, requestFactory, responseProcessor);
|
||||
}
|
||||
|
||||
{{#operation}}
|
||||
|
||||
@@ -80,7 +80,7 @@ export class ObjectSerializer {
|
||||
}
|
||||
}
|
||||
|
||||
public static serialize(data: any, type: string) {
|
||||
public static serialize(data: any, type: string, format: string) {
|
||||
if (data == undefined) {
|
||||
return data;
|
||||
} else if (primitives.indexOf(type.toLowerCase()) !== -1) {
|
||||
@@ -91,11 +91,20 @@ export class ObjectSerializer {
|
||||
let transformedData: any[] = [];
|
||||
for (let index in data) {
|
||||
let date = data[index];
|
||||
transformedData.push(ObjectSerializer.serialize(date, subType));
|
||||
transformedData.push(ObjectSerializer.serialize(date, subType, format));
|
||||
}
|
||||
return transformedData;
|
||||
} else if (type === "Date") {
|
||||
return data.toISOString();
|
||||
if (format == "date") {
|
||||
let month = data.getMonth()+1
|
||||
month = month < 10 ? "0" + month.toString() : month.toString()
|
||||
let day = data.getDate();
|
||||
day = day < 10 ? "0" + day.toString() : day.toString();
|
||||
|
||||
return data.getFullYear() + "-" + month + "-" + day;
|
||||
} else {
|
||||
return data.toISOString();
|
||||
}
|
||||
} else {
|
||||
if (enumsMap.has(type)) {
|
||||
return data;
|
||||
@@ -112,13 +121,13 @@ export class ObjectSerializer {
|
||||
let instance: {[index: string]: any} = {};
|
||||
for (let index in attributeTypes) {
|
||||
let attributeType = attributeTypes[index];
|
||||
instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type);
|
||||
instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type, attributeType.format);
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
}
|
||||
|
||||
public static deserialize(data: any, type: string) {
|
||||
public static deserialize(data: any, type: string, format: string) {
|
||||
// polymorphism may change the actual type.
|
||||
type = ObjectSerializer.findCorrectType(data, type);
|
||||
if (data == undefined) {
|
||||
@@ -131,7 +140,7 @@ export class ObjectSerializer {
|
||||
let transformedData: any[] = [];
|
||||
for (let index in data) {
|
||||
let date = data[index];
|
||||
transformedData.push(ObjectSerializer.deserialize(date, subType));
|
||||
transformedData.push(ObjectSerializer.deserialize(date, subType, format));
|
||||
}
|
||||
return transformedData;
|
||||
} else if (type === "Date") {
|
||||
@@ -148,7 +157,7 @@ export class ObjectSerializer {
|
||||
let attributeTypes = typeMap[type].getAttributeTypeMap();
|
||||
for (let index in attributeTypes) {
|
||||
let attributeType = attributeTypes[index];
|
||||
instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type);
|
||||
instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type, attributeType.format);
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
|
||||
@@ -28,12 +28,13 @@ export class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{
|
||||
{{/discriminator}}
|
||||
|
||||
{{^isArrayModel}}
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{{#vars}}
|
||||
{
|
||||
"name": "{{name}}",
|
||||
"baseName": "{{baseName}}",
|
||||
"type": "{{#isEnum}}{{{datatypeWithEnum}}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}"
|
||||
"type": "{{#isEnum}}{{{datatypeWithEnum}}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}",
|
||||
"format": "{{dataFormat}}"
|
||||
}{{#hasMore}},
|
||||
{{/hasMore}}
|
||||
{{/vars}}
|
||||
|
||||
@@ -1,440 +0,0 @@
|
||||
import { ResponseContext, RequestContext, HttpFile } from './http/http';
|
||||
import * as models from './models/all';
|
||||
import { Configuration} from './configuration'
|
||||
import { Observable, of } from 'rxjs';
|
||||
import {mergeMap, map} from 'rxjs/operators';
|
||||
|
||||
import { ApiResponse } from './models/ApiResponse';
|
||||
import { Category } from './models/Category';
|
||||
import { Order } from './models/Order';
|
||||
import { Pet } from './models/Pet';
|
||||
import { Tag } from './models/Tag';
|
||||
import { User } from './models/User';
|
||||
|
||||
import { PetApiRequestFactory, PetApiResponseProcessor} from "./apis/PetApi";
|
||||
export class PetApi {
|
||||
private requestFactory: PetApiRequestFactory;
|
||||
private responseProcessor: PetApiResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new PetApiRequestFactory(configuration);
|
||||
this.responseProcessor = new PetApiResponseProcessor();
|
||||
}
|
||||
|
||||
public addPet(pet: Pet, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.addPet(pet, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.addPet(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public deletePet(petId: number, apiKey?: string, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.deletePet(petId, apiKey, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.deletePet(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: Configuration): Observable<Array<Pet>> {
|
||||
const requestContext = this.requestFactory.findPetsByStatus(status, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.findPetsByStatus(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public findPetsByTags(tags: Array<string>, options?: Configuration): Observable<Array<Pet>> {
|
||||
const requestContext = this.requestFactory.findPetsByTags(tags, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.findPetsByTags(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public getPetById(petId: number, options?: Configuration): Observable<Pet> {
|
||||
const requestContext = this.requestFactory.getPetById(petId, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.getPetById(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public updatePet(pet: Pet, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.updatePet(pet, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.updatePet(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public updatePetWithForm(petId: number, name?: string, status?: string, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.updatePetWithForm(petId, name, status, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.updatePetWithForm(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public uploadFile(petId: number, additionalMetadata?: string, file?: HttpFile, options?: Configuration): Observable<ApiResponse> {
|
||||
const requestContext = this.requestFactory.uploadFile(petId, additionalMetadata, file, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.uploadFile(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
import { StoreApiRequestFactory, StoreApiResponseProcessor} from "./apis/StoreApi";
|
||||
export class StoreApi {
|
||||
private requestFactory: StoreApiRequestFactory;
|
||||
private responseProcessor: StoreApiResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new StoreApiRequestFactory(configuration);
|
||||
this.responseProcessor = new StoreApiResponseProcessor();
|
||||
}
|
||||
|
||||
public deleteOrder(orderId: string, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.deleteOrder(orderId, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.deleteOrder(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public getInventory(options?: Configuration): Observable<{ [key: string]: number; }> {
|
||||
const requestContext = this.requestFactory.getInventory(options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.getInventory(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public getOrderById(orderId: number, options?: Configuration): Observable<Order> {
|
||||
const requestContext = this.requestFactory.getOrderById(orderId, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.getOrderById(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public placeOrder(order: Order, options?: Configuration): Observable<Order> {
|
||||
const requestContext = this.requestFactory.placeOrder(order, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.placeOrder(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
import { UserApiRequestFactory, UserApiResponseProcessor} from "./apis/UserApi";
|
||||
export class UserApi {
|
||||
private requestFactory: UserApiRequestFactory;
|
||||
private responseProcessor: UserApiResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new UserApiRequestFactory(configuration);
|
||||
this.responseProcessor = new UserApiResponseProcessor();
|
||||
}
|
||||
|
||||
public createUser(user: User, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.createUser(user, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.createUser(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public createUsersWithArrayInput(user: Array<User>, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.createUsersWithArrayInput(user, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.createUsersWithArrayInput(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public createUsersWithListInput(user: Array<User>, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.createUsersWithListInput(user, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.createUsersWithListInput(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public deleteUser(username: string, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.deleteUser(username, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.deleteUser(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public getUserByName(username: string, options?: Configuration): Observable<User> {
|
||||
const requestContext = this.requestFactory.getUserByName(username, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.getUserByName(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public loginUser(username: string, password: string, options?: Configuration): Observable<string> {
|
||||
const requestContext = this.requestFactory.loginUser(username, password, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.loginUser(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public logoutUser(options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.logoutUser(options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.logoutUser(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
public updateUser(username: string, user: User, options?: Configuration): Observable<void> {
|
||||
const requestContext = this.requestFactory.updateUser(username, user, options);
|
||||
|
||||
// build promise chain
|
||||
let middlewarePreObservable = of(requestContext);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePreObservable = middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => middleware.pre(ctx)));
|
||||
}
|
||||
|
||||
return middlewarePreObservable.pipe(mergeMap((ctx: RequestContext) => this.configuration.httpApi.send(ctx))).
|
||||
pipe(mergeMap((response: ResponseContext) => {
|
||||
let middlewarePostObservable = of(response);
|
||||
for (let middleware of this.configuration.middleware) {
|
||||
middlewarePostObservable = middlewarePostObservable.pipe(mergeMap((rsp: ResponseContext) => middleware.post(rsp)));
|
||||
}
|
||||
return middlewarePostObservable.pipe(map((rsp: ResponseContext) => this.responseProcessor.updateUser(rsp)));
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ export class PetApiRequestFactory extends BaseAPIRequestFactory {
|
||||
// Query Params
|
||||
|
||||
// Header Params
|
||||
requestContext.setHeaderParam("api_key", ObjectSerializer.serialize(apiKey, "string"));
|
||||
requestContext.setHeaderParam("api_key", ObjectSerializer.serialize(apiKey, "string", ""));
|
||||
|
||||
// Form Params
|
||||
|
||||
@@ -109,7 +109,7 @@ export class PetApiRequestFactory extends BaseAPIRequestFactory {
|
||||
|
||||
// Query Params
|
||||
if (status !== undefined) {
|
||||
requestContext.setQueryParam("status", ObjectSerializer.serialize(status, "Array<'available' | 'pending' | 'sold'>"));
|
||||
requestContext.setQueryParam("status", ObjectSerializer.serialize(status, "Array<'available' | 'pending' | 'sold'>", ""));
|
||||
}
|
||||
|
||||
// Header Params
|
||||
@@ -147,7 +147,7 @@ export class PetApiRequestFactory extends BaseAPIRequestFactory {
|
||||
|
||||
// Query Params
|
||||
if (tags !== undefined) {
|
||||
requestContext.setQueryParam("tags", ObjectSerializer.serialize(tags, "Array<string>"));
|
||||
requestContext.setQueryParam("tags", ObjectSerializer.serialize(tags, "Array<string>", ""));
|
||||
}
|
||||
|
||||
// Header Params
|
||||
@@ -388,7 +388,7 @@ export class PetApiResponseProcessor {
|
||||
public findPetsByStatus(response: ResponseContext): Array<Pet> {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>") as Array<Pet>;
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>", "") as Array<Pet>;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -398,7 +398,7 @@ export class PetApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>") as Array<Pet>;
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>", "") as Array<Pet>;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
@@ -412,7 +412,7 @@ export class PetApiResponseProcessor {
|
||||
public findPetsByTags(response: ResponseContext): Array<Pet> {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>") as Array<Pet>;
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>", "") as Array<Pet>;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -422,7 +422,7 @@ export class PetApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>") as Array<Pet>;
|
||||
const body: Array<Pet> = ObjectSerializer.deserialize(jsonBody, "Array<Pet>", "") as Array<Pet>;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
@@ -436,7 +436,7 @@ export class PetApiResponseProcessor {
|
||||
public getPetById(response: ResponseContext): Pet {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Pet = ObjectSerializer.deserialize(jsonBody, "Pet") as Pet;
|
||||
const body: Pet = ObjectSerializer.deserialize(jsonBody, "Pet", "") as Pet;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -449,7 +449,7 @@ export class PetApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Pet = ObjectSerializer.deserialize(jsonBody, "Pet") as Pet;
|
||||
const body: Pet = ObjectSerializer.deserialize(jsonBody, "Pet", "") as Pet;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
@@ -503,14 +503,14 @@ export class PetApiResponseProcessor {
|
||||
public uploadFile(response: ResponseContext): ApiResponse {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: ApiResponse = ObjectSerializer.deserialize(jsonBody, "ApiResponse") as ApiResponse;
|
||||
const body: ApiResponse = ObjectSerializer.deserialize(jsonBody, "ApiResponse", "") as ApiResponse;
|
||||
return body;
|
||||
}
|
||||
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: ApiResponse = ObjectSerializer.deserialize(jsonBody, "ApiResponse") as ApiResponse;
|
||||
const body: ApiResponse = ObjectSerializer.deserialize(jsonBody, "ApiResponse", "") as ApiResponse;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
|
||||
@@ -173,14 +173,14 @@ export class StoreApiResponseProcessor {
|
||||
public getInventory(response: ResponseContext): { [key: string]: number; } {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: { [key: string]: number; } = ObjectSerializer.deserialize(jsonBody, "{ [key: string]: number; }") as { [key: string]: number; };
|
||||
const body: { [key: string]: number; } = ObjectSerializer.deserialize(jsonBody, "{ [key: string]: number; }", "int32") as { [key: string]: number; };
|
||||
return body;
|
||||
}
|
||||
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: { [key: string]: number; } = ObjectSerializer.deserialize(jsonBody, "{ [key: string]: number; }") as { [key: string]: number; };
|
||||
const body: { [key: string]: number; } = ObjectSerializer.deserialize(jsonBody, "{ [key: string]: number; }", "int32") as { [key: string]: number; };
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
@@ -194,7 +194,7 @@ export class StoreApiResponseProcessor {
|
||||
public getOrderById(response: ResponseContext): Order {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order") as Order;
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order", "") as Order;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -207,7 +207,7 @@ export class StoreApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order") as Order;
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order", "") as Order;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
@@ -221,7 +221,7 @@ export class StoreApiResponseProcessor {
|
||||
public placeOrder(response: ResponseContext): Order {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order") as Order;
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order", "") as Order;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -231,7 +231,7 @@ export class StoreApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order") as Order;
|
||||
const body: Order = ObjectSerializer.deserialize(jsonBody, "Order", "") as Order;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
|
||||
@@ -203,10 +203,10 @@ export class UserApiRequestFactory extends BaseAPIRequestFactory {
|
||||
|
||||
// Query Params
|
||||
if (username !== undefined) {
|
||||
requestContext.setQueryParam("username", ObjectSerializer.serialize(username, "string"));
|
||||
requestContext.setQueryParam("username", ObjectSerializer.serialize(username, "string", ""));
|
||||
}
|
||||
if (password !== undefined) {
|
||||
requestContext.setQueryParam("password", ObjectSerializer.serialize(password, "string"));
|
||||
requestContext.setQueryParam("password", ObjectSerializer.serialize(password, "string", ""));
|
||||
}
|
||||
|
||||
// Header Params
|
||||
@@ -373,7 +373,7 @@ export class UserApiResponseProcessor {
|
||||
public getUserByName(response: ResponseContext): User {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: User = ObjectSerializer.deserialize(jsonBody, "User") as User;
|
||||
const body: User = ObjectSerializer.deserialize(jsonBody, "User", "") as User;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -386,7 +386,7 @@ export class UserApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: User = ObjectSerializer.deserialize(jsonBody, "User") as User;
|
||||
const body: User = ObjectSerializer.deserialize(jsonBody, "User", "") as User;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
@@ -400,7 +400,7 @@ export class UserApiResponseProcessor {
|
||||
public loginUser(response: ResponseContext): string {
|
||||
if (isCodeInRange("200", response.httpStatusCode)) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: string = ObjectSerializer.deserialize(jsonBody, "string") as string;
|
||||
const body: string = ObjectSerializer.deserialize(jsonBody, "string", "") as string;
|
||||
return body;
|
||||
}
|
||||
if (isCodeInRange("400", response.httpStatusCode)) {
|
||||
@@ -410,7 +410,7 @@ export class UserApiResponseProcessor {
|
||||
// Work around for incorrect api specification in petstore.yaml
|
||||
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
|
||||
const jsonBody = JSON.parse(response.body);
|
||||
const body: string = ObjectSerializer.deserialize(jsonBody, "string") as string;
|
||||
const body: string = ObjectSerializer.deserialize(jsonBody, "string", "") as string;
|
||||
return body;
|
||||
}
|
||||
let body = response.body || "";
|
||||
|
||||
@@ -12,21 +12,24 @@ export class ApiResponse {
|
||||
|
||||
static readonly discriminator: string | undefined = undefined;
|
||||
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{
|
||||
"name": "code",
|
||||
"baseName": "code",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int32"
|
||||
},
|
||||
{
|
||||
"name": "type",
|
||||
"baseName": "type",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "message",
|
||||
"baseName": "message",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
} ];
|
||||
|
||||
static getAttributeTypeMap() {
|
||||
|
||||
@@ -11,16 +11,18 @@ export class Category {
|
||||
|
||||
static readonly discriminator: string | undefined = undefined;
|
||||
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{
|
||||
"name": "id",
|
||||
"baseName": "id",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"baseName": "name",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
} ];
|
||||
|
||||
static getAttributeTypeMap() {
|
||||
|
||||
@@ -74,7 +74,7 @@ export class ObjectSerializer {
|
||||
}
|
||||
}
|
||||
|
||||
public static serialize(data: any, type: string) {
|
||||
public static serialize(data: any, type: string, format: string) {
|
||||
if (data == undefined) {
|
||||
return data;
|
||||
} else if (primitives.indexOf(type.toLowerCase()) !== -1) {
|
||||
@@ -85,11 +85,20 @@ export class ObjectSerializer {
|
||||
let transformedData: any[] = [];
|
||||
for (let index in data) {
|
||||
let date = data[index];
|
||||
transformedData.push(ObjectSerializer.serialize(date, subType));
|
||||
transformedData.push(ObjectSerializer.serialize(date, subType, format));
|
||||
}
|
||||
return transformedData;
|
||||
} else if (type === "Date") {
|
||||
return data.toISOString();
|
||||
if (format == "date") {
|
||||
let month = data.getMonth()+1
|
||||
month = month < 10 ? "0" + month.toString() : month.toString()
|
||||
let day = data.getDate();
|
||||
day = day < 10 ? "0" + day.toString() : day.toString();
|
||||
|
||||
return data.getFullYear() + "-" + month + "-" + day;
|
||||
} else {
|
||||
return data.toISOString();
|
||||
}
|
||||
} else {
|
||||
if (enumsMap.has(type)) {
|
||||
return data;
|
||||
@@ -106,13 +115,13 @@ export class ObjectSerializer {
|
||||
let instance: {[index: string]: any} = {};
|
||||
for (let index in attributeTypes) {
|
||||
let attributeType = attributeTypes[index];
|
||||
instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type);
|
||||
instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type, attributeType.format);
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
}
|
||||
|
||||
public static deserialize(data: any, type: string) {
|
||||
public static deserialize(data: any, type: string, format: string) {
|
||||
// polymorphism may change the actual type.
|
||||
type = ObjectSerializer.findCorrectType(data, type);
|
||||
if (data == undefined) {
|
||||
@@ -125,7 +134,7 @@ export class ObjectSerializer {
|
||||
let transformedData: any[] = [];
|
||||
for (let index in data) {
|
||||
let date = data[index];
|
||||
transformedData.push(ObjectSerializer.deserialize(date, subType));
|
||||
transformedData.push(ObjectSerializer.deserialize(date, subType, format));
|
||||
}
|
||||
return transformedData;
|
||||
} else if (type === "Date") {
|
||||
@@ -142,7 +151,7 @@ export class ObjectSerializer {
|
||||
let attributeTypes = typeMap[type].getAttributeTypeMap();
|
||||
for (let index in attributeTypes) {
|
||||
let attributeType = attributeTypes[index];
|
||||
instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type);
|
||||
instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type, attributeType.format);
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
|
||||
@@ -18,36 +18,42 @@ export class Order {
|
||||
|
||||
static readonly discriminator: string | undefined = undefined;
|
||||
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{
|
||||
"name": "id",
|
||||
"baseName": "id",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
{
|
||||
"name": "petId",
|
||||
"baseName": "petId",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
{
|
||||
"name": "quantity",
|
||||
"baseName": "quantity",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int32"
|
||||
},
|
||||
{
|
||||
"name": "shipDate",
|
||||
"baseName": "shipDate",
|
||||
"type": "Date"
|
||||
"type": "Date",
|
||||
"format": "date-time"
|
||||
},
|
||||
{
|
||||
"name": "status",
|
||||
"baseName": "status",
|
||||
"type": "OrderStatusEnum"
|
||||
"type": "OrderStatusEnum",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "complete",
|
||||
"baseName": "complete",
|
||||
"type": "boolean"
|
||||
"type": "boolean",
|
||||
"format": ""
|
||||
} ];
|
||||
|
||||
static getAttributeTypeMap() {
|
||||
|
||||
@@ -20,36 +20,42 @@ export class Pet {
|
||||
|
||||
static readonly discriminator: string | undefined = undefined;
|
||||
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{
|
||||
"name": "id",
|
||||
"baseName": "id",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
{
|
||||
"name": "category",
|
||||
"baseName": "category",
|
||||
"type": "Category"
|
||||
"type": "Category",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"baseName": "name",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "photoUrls",
|
||||
"baseName": "photoUrls",
|
||||
"type": "Array<string>"
|
||||
"type": "Array<string>",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "tags",
|
||||
"baseName": "tags",
|
||||
"type": "Array<Tag>"
|
||||
"type": "Array<Tag>",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "status",
|
||||
"baseName": "status",
|
||||
"type": "PetStatusEnum"
|
||||
"type": "PetStatusEnum",
|
||||
"format": ""
|
||||
} ];
|
||||
|
||||
static getAttributeTypeMap() {
|
||||
|
||||
@@ -11,16 +11,18 @@ export class Tag {
|
||||
|
||||
static readonly discriminator: string | undefined = undefined;
|
||||
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{
|
||||
"name": "id",
|
||||
"baseName": "id",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"baseName": "name",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
} ];
|
||||
|
||||
static getAttributeTypeMap() {
|
||||
|
||||
@@ -20,46 +20,54 @@ export class User {
|
||||
|
||||
static readonly discriminator: string | undefined = undefined;
|
||||
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
|
||||
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
|
||||
{
|
||||
"name": "id",
|
||||
"baseName": "id",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
{
|
||||
"name": "username",
|
||||
"baseName": "username",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "firstName",
|
||||
"baseName": "firstName",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "lastName",
|
||||
"baseName": "lastName",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "email",
|
||||
"baseName": "email",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "password",
|
||||
"baseName": "password",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "phone",
|
||||
"baseName": "phone",
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"format": ""
|
||||
},
|
||||
{
|
||||
"name": "userStatus",
|
||||
"baseName": "userStatus",
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"format": "int32"
|
||||
} ];
|
||||
|
||||
static getAttributeTypeMap() {
|
||||
|
||||
@@ -15,10 +15,12 @@ import { PetApiRequestFactory, PetApiResponseProcessor} from "../apis/PetApi";
|
||||
export class ObservablePetApi {
|
||||
private requestFactory: PetApiRequestFactory;
|
||||
private responseProcessor: PetApiResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new PetApiRequestFactory(configuration);
|
||||
this.responseProcessor = new PetApiResponseProcessor();
|
||||
private configuration: Configuration;
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: PetApiRequestFactory, responseProcessor?: PetApiResponseProcessor) {
|
||||
this.configuration = configuration;
|
||||
this.requestFactory = requestFactory || new PetApiRequestFactory(configuration);
|
||||
this.responseProcessor = responseProcessor || new PetApiResponseProcessor();
|
||||
}
|
||||
|
||||
public addPet(pet: Pet, options?: Configuration): Observable<void> {
|
||||
@@ -183,10 +185,12 @@ import { StoreApiRequestFactory, StoreApiResponseProcessor} from "../apis/StoreA
|
||||
export class ObservableStoreApi {
|
||||
private requestFactory: StoreApiRequestFactory;
|
||||
private responseProcessor: StoreApiResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new StoreApiRequestFactory(configuration);
|
||||
this.responseProcessor = new StoreApiResponseProcessor();
|
||||
private configuration: Configuration;
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: StoreApiRequestFactory, responseProcessor?: StoreApiResponseProcessor) {
|
||||
this.configuration = configuration;
|
||||
this.requestFactory = requestFactory || new StoreApiRequestFactory(configuration);
|
||||
this.responseProcessor = responseProcessor || new StoreApiResponseProcessor();
|
||||
}
|
||||
|
||||
public deleteOrder(orderId: string, options?: Configuration): Observable<void> {
|
||||
@@ -275,10 +279,12 @@ import { UserApiRequestFactory, UserApiResponseProcessor} from "../apis/UserApi"
|
||||
export class ObservableUserApi {
|
||||
private requestFactory: UserApiRequestFactory;
|
||||
private responseProcessor: UserApiResponseProcessor;
|
||||
|
||||
public constructor(private configuration: Configuration) {
|
||||
this.requestFactory = new UserApiRequestFactory(configuration);
|
||||
this.responseProcessor = new UserApiResponseProcessor();
|
||||
private configuration: Configuration;
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: UserApiRequestFactory, responseProcessor?: UserApiResponseProcessor) {
|
||||
this.configuration = configuration;
|
||||
this.requestFactory = requestFactory || new UserApiRequestFactory(configuration);
|
||||
this.responseProcessor = responseProcessor || new UserApiResponseProcessor();
|
||||
}
|
||||
|
||||
public createUser(user: User, options?: Configuration): Observable<void> {
|
||||
|
||||
@@ -14,9 +14,9 @@ import { ObservablePetApi } from './ObservableAPI';
|
||||
import { PetApiRequestFactory, PetApiResponseProcessor} from "../apis/PetApi";
|
||||
export class PromisePetApi {
|
||||
private api: ObservablePetApi
|
||||
|
||||
public constructor(configuration: Configuration) {
|
||||
this.api = new ObservablePetApi(configuration);
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: PetApiRequestFactory, responseProcessor?: PetApiResponseProcessor) {
|
||||
this.api = new ObservablePetApi(configuration, requestFactory, responseProcessor);
|
||||
}
|
||||
|
||||
public addPet(pet: Pet, options?: Configuration): Promise<void> {
|
||||
@@ -70,9 +70,9 @@ import { ObservableStoreApi } from './ObservableAPI';
|
||||
import { StoreApiRequestFactory, StoreApiResponseProcessor} from "../apis/StoreApi";
|
||||
export class PromiseStoreApi {
|
||||
private api: ObservableStoreApi
|
||||
|
||||
public constructor(configuration: Configuration) {
|
||||
this.api = new ObservableStoreApi(configuration);
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: StoreApiRequestFactory, responseProcessor?: StoreApiResponseProcessor) {
|
||||
this.api = new ObservableStoreApi(configuration, requestFactory, responseProcessor);
|
||||
}
|
||||
|
||||
public deleteOrder(orderId: string, options?: Configuration): Promise<void> {
|
||||
@@ -106,9 +106,9 @@ import { ObservableUserApi } from './ObservableAPI';
|
||||
import { UserApiRequestFactory, UserApiResponseProcessor} from "../apis/UserApi";
|
||||
export class PromiseUserApi {
|
||||
private api: ObservableUserApi
|
||||
|
||||
public constructor(configuration: Configuration) {
|
||||
this.api = new ObservableUserApi(configuration);
|
||||
|
||||
public constructor(configuration: Configuration, requestFactory?: UserApiRequestFactory, responseProcessor?: UserApiResponseProcessor) {
|
||||
this.api = new ObservableUserApi(configuration, requestFactory, responseProcessor);
|
||||
}
|
||||
|
||||
public createUser(user: User, options?: Configuration): Promise<void> {
|
||||
|
||||
@@ -12,44 +12,50 @@ describe("ObjectSerializer", () => {
|
||||
describe("Serialize", () => {
|
||||
it("String", () => {
|
||||
const input = "test string"
|
||||
expect(ObjectSerializer.serialize(input, "string")).to.equal("test string")
|
||||
expect(ObjectSerializer.serialize(input, "string", "")).to.equal("test string")
|
||||
});
|
||||
|
||||
it("Number", () => {
|
||||
const input = 1337
|
||||
expect(ObjectSerializer.serialize(input, "number")).to.equal(1337)
|
||||
expect(ObjectSerializer.serialize(input, "number", "")).to.equal(1337)
|
||||
});
|
||||
|
||||
it("String Array", () => {
|
||||
const input = ["a", "b", "c"]
|
||||
expect(ObjectSerializer.serialize(input, "Array<string>")).to.deep.equal(["a", "b", "c"])
|
||||
expect(ObjectSerializer.serialize(input, "Array<string>", "")).to.deep.equal(["a", "b", "c"])
|
||||
})
|
||||
|
||||
it("Number Array", () => {
|
||||
const input = [ 1337, 42, 0]
|
||||
expect(ObjectSerializer.serialize(input, "Array<number>")).to.deep.equal([1337, 42, 0])
|
||||
expect(ObjectSerializer.serialize(input, "Array<number>", "")).to.deep.equal([1337, 42, 0])
|
||||
})
|
||||
|
||||
it("Date", () => {
|
||||
it("Date-Time", () => {
|
||||
const input = new Date(1543777609696)
|
||||
expect(ObjectSerializer.serialize(input, "Date")).to.equal(input.toISOString())
|
||||
expect(ObjectSerializer.serialize(input, "Date", "date-time")).to.equal(input.toISOString())
|
||||
})
|
||||
|
||||
it("Date-Time", () => {
|
||||
const input = new Date(1543777609696)
|
||||
expect(ObjectSerializer.serialize(input, "Date", "date")).to.equal("2018-12-02")
|
||||
})
|
||||
|
||||
|
||||
it("Object", () => {
|
||||
const input = {"a": "test", "b": { "test": 5}}
|
||||
expect(ObjectSerializer.serialize(input, "Object")).to.deep.equal({ a: "test", "b": { "test": 5}})
|
||||
expect(ObjectSerializer.serialize(input, "Object", "")).to.deep.equal({ a: "test", "b": { "test": 5}})
|
||||
})
|
||||
|
||||
it("Class", () => {
|
||||
const input = new petstore.models.Category()
|
||||
input.id = 4
|
||||
input.name = "Test"
|
||||
expect(ObjectSerializer.serialize(input, "Category")).to.deep.equal({ "id": input.id, "name": input.name})
|
||||
expect(ObjectSerializer.serialize(input, "Category", "")).to.deep.equal({ "id": input.id, "name": input.name})
|
||||
});
|
||||
|
||||
it ("Enum", () => {
|
||||
const input = "available"
|
||||
expect(ObjectSerializer.serialize(input, "Pet.StatusEnum")).to.equal("available")
|
||||
expect(ObjectSerializer.serialize(input, "Pet.StatusEnum", "")).to.equal("available")
|
||||
})
|
||||
|
||||
it("Complex Class", () => {
|
||||
@@ -77,7 +83,7 @@ describe("ObjectSerializer", () => {
|
||||
pet.status = "available"
|
||||
pet.tags = tags
|
||||
|
||||
expect(ObjectSerializer.serialize(pet, "Pet")).to.deep.equal({
|
||||
expect(ObjectSerializer.serialize(pet, "Pet", "")).to.deep.equal({
|
||||
"id": pet.id,
|
||||
"name": pet.name,
|
||||
"category": {
|
||||
@@ -103,39 +109,45 @@ describe("ObjectSerializer", () => {
|
||||
})
|
||||
}
|
||||
|
||||
expect(ObjectSerializer.serialize(categories, "Array<Category>")).to.deep.equal(result)
|
||||
expect(ObjectSerializer.serialize(categories, "Array<Category>", "")).to.deep.equal(result)
|
||||
})
|
||||
})
|
||||
|
||||
describe("Deserialize", () => {
|
||||
it("String", () => {
|
||||
const input = "test string"
|
||||
expect(ObjectSerializer.deserialize(input, "string")).to.equal("test string")
|
||||
expect(ObjectSerializer.deserialize(input, "string", "")).to.equal("test string")
|
||||
});
|
||||
|
||||
it("Number", () => {
|
||||
const input = 1337
|
||||
expect(ObjectSerializer.deserialize(input, "number")).to.equal(1337)
|
||||
expect(ObjectSerializer.deserialize(input, "number", "")).to.equal(1337)
|
||||
});
|
||||
|
||||
it("String Array", () => {
|
||||
const input = ["a", "b", "c"]
|
||||
expect(ObjectSerializer.deserialize(input, "Array<string>")).to.deep.equal(["a", "b", "c"])
|
||||
expect(ObjectSerializer.deserialize(input, "Array<string>", "")).to.deep.equal(["a", "b", "c"])
|
||||
})
|
||||
|
||||
it("Number Array", () => {
|
||||
const input = [ 1337, 42, 0]
|
||||
expect(ObjectSerializer.deserialize(input, "Array<number>")).to.deep.equal([1337, 42, 0])
|
||||
expect(ObjectSerializer.deserialize(input, "Array<number>", "")).to.deep.equal([1337, 42, 0])
|
||||
})
|
||||
|
||||
it("DateTime", () => {
|
||||
const input = new Date(1543777609696)
|
||||
expect(ObjectSerializer.deserialize(input.toISOString(), "Date", "date-time").getTime()).to.equal(input.getTime())
|
||||
})
|
||||
|
||||
it("Date", () => {
|
||||
const input = new Date(1543777609696)
|
||||
expect(ObjectSerializer.deserialize(input.toISOString(), "Date").getTime()).to.equal(input.getTime())
|
||||
let dateString = "2019-02-01"
|
||||
const input = new Date(dateString);
|
||||
expect(ObjectSerializer.deserialize(dateString, "Date", "date").getTime()).to.equal(input.getTime())
|
||||
})
|
||||
|
||||
it("Object", () => {
|
||||
const input = {"a": "test", "b": { "test": 5}}
|
||||
expect(ObjectSerializer.deserialize(input, "Object")).to.deep.equal({ a: "test", "b": { "test": 5}})
|
||||
expect(ObjectSerializer.deserialize(input, "Object", "")).to.deep.equal({ a: "test", "b": { "test": 5}})
|
||||
})
|
||||
|
||||
it("Class", () => {
|
||||
@@ -150,7 +162,7 @@ describe("ObjectSerializer", () => {
|
||||
|
||||
it ("Enum", () => {
|
||||
const input = "available"
|
||||
expect(ObjectSerializer.deserialize("available", "Pet.StatusEnum")).to.equal(input)
|
||||
expect(ObjectSerializer.deserialize("available", "Pet.StatusEnum", "")).to.equal(input)
|
||||
})
|
||||
|
||||
it("Complex Class", () => {
|
||||
@@ -188,7 +200,7 @@ describe("ObjectSerializer", () => {
|
||||
"photoUrls": [ "url", "other url"],
|
||||
"status": "available",
|
||||
"tags": tagResult
|
||||
}, "Pet") as petstore.models.Pet
|
||||
}, "Pet", "") as petstore.models.Pet
|
||||
|
||||
expect(deserialized.constructor.name).to.equal("Pet")
|
||||
expect(deserialized.category.constructor.name).to.equal("Category")
|
||||
@@ -212,7 +224,7 @@ describe("ObjectSerializer", () => {
|
||||
})
|
||||
}
|
||||
|
||||
const deserialized = ObjectSerializer.deserialize(result, "Array<Category>")
|
||||
const deserialized = ObjectSerializer.deserialize(result, "Array<Category>", "")
|
||||
for (let i = 0; i < categories.length; i++) {
|
||||
expect(deserialized[i].constructor.name).to.equal("Category")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user