forked from loafle/openapi-generator-original
[C][Client] Convert integer/boolean to string for query parameter in request url (#6652)
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
#include <ctype.h>
|
||||
#include "{{classname}}.h"
|
||||
|
||||
|
||||
#define MAX_NUMBER_LENGTH 16
|
||||
#define MAX_BUFFER_LENGTH 4096
|
||||
#define intToStr(dst, src) \
|
||||
do {\
|
||||
@@ -209,7 +209,7 @@ end:
|
||||
// query parameters
|
||||
{{^isListContainer}}
|
||||
char *keyQuery_{{{paramName}}} = NULL;
|
||||
{{#isPrimitiveType}}{{#isNumber}}{{{dataType}}}{{/isNumber}}{{#isLong}}{{{dataType}}}{{/isLong}}{{#isInteger}}{{{dataType}}}{{/isInteger}}{{#isDouble}}{{{dataType}}}{{/isDouble}}{{#isFloat}}{{{dataType}}}{{/isFloat}}{{#isBoolean}}{{{dataType}}}{{/isBoolean}}{{#isEnum}}{{#isString}}{{projectName}}_{{operationId}}_{{baseName}}_e{{/isString}}{{/isEnum}}{{^isEnum}}{{#isString}}{{{dataType}}} *{{/isString}}{{/isEnum}}{{#isByteArray}}{{{dataType}}}{{/isByteArray}}{{#isDate}}{{{dataType}}}{{/isDate}}{{#isDateTime}}{{{dataType}}}{{/isDateTime}}{{#isFile}}{{{dataType}}}{{/isFile}}{{/isPrimitiveType}}{{^isPrimitiveType}}{{#isModel}}{{#isEnum}}{{datatypeWithEnum}}_e{{/isEnum}}{{^isEnum}}{{{dataType}}}_t *{{/isEnum}}{{/isModel}}{{^isModel}}{{#isEnum}}{{datatypeWithEnum}}_e{{/isEnum}}{{/isModel}}{{#isUuid}}{{dataType}} *{{/isUuid}}{{#isEmail}}{{dataType}}{{/isEmail}}{{/isPrimitiveType}} valueQuery_{{{paramName}}} {{#isString}}{{^isEnum}}= NULL{{/isEnum}}{{/isString}};
|
||||
{{#isPrimitiveType}}{{#isNumber}}{{{dataType}}}{{/isNumber}}{{#isLong}}{{{dataType}}}{{/isLong}}{{#isInteger}}char *{{/isInteger}}{{#isDouble}}{{{dataType}}}{{/isDouble}}{{#isFloat}}{{{dataType}}}{{/isFloat}}{{#isBoolean}}char *{{/isBoolean}}{{#isEnum}}{{#isString}}{{projectName}}_{{operationId}}_{{baseName}}_e{{/isString}}{{/isEnum}}{{^isEnum}}{{#isString}}{{{dataType}}} *{{/isString}}{{/isEnum}}{{#isByteArray}}{{{dataType}}}{{/isByteArray}}{{#isDate}}{{{dataType}}}{{/isDate}}{{#isDateTime}}{{{dataType}}}{{/isDateTime}}{{#isFile}}{{{dataType}}}{{/isFile}}{{/isPrimitiveType}}{{^isPrimitiveType}}{{#isModel}}{{#isEnum}}{{datatypeWithEnum}}_e{{/isEnum}}{{^isEnum}}{{{dataType}}}_t *{{/isEnum}}{{/isModel}}{{^isModel}}{{#isEnum}}{{datatypeWithEnum}}_e{{/isEnum}}{{/isModel}}{{#isUuid}}{{dataType}} *{{/isUuid}}{{#isEmail}}{{dataType}}{{/isEmail}}{{/isPrimitiveType}} valueQuery_{{{paramName}}} {{#isString}}{{^isEnum}}= NULL{{/isEnum}}{{/isString}}{{#isInteger}}= NULL{{/isInteger}};
|
||||
keyValuePair_t *keyPairQuery_{{paramName}} = 0;
|
||||
{{/isListContainer}}
|
||||
if ({{paramName}})
|
||||
@@ -219,9 +219,21 @@ end:
|
||||
{{/isListContainer}}
|
||||
{{^isListContainer}}
|
||||
keyQuery_{{{paramName}}} = strdup("{{{baseName}}}");
|
||||
{{#isInteger}}
|
||||
valueQuery_{{{paramName}}} = calloc(1,MAX_NUMBER_LENGTH);
|
||||
snprintf(valueQuery_{{{paramName}}}, MAX_NUMBER_LENGTH, "%d", {{{paramName}}});
|
||||
{{/isInteger}}
|
||||
{{#isBoolean}}
|
||||
valueQuery_{{{paramName}}} = calloc(1,MAX_NUMBER_LENGTH);
|
||||
snprintf(valueQuery_{{{paramName}}}, MAX_NUMBER_LENGTH, "%d", {{{paramName}}});
|
||||
{{/isBoolean}}
|
||||
{{^isInteger}}
|
||||
{{^isBoolean}}
|
||||
valueQuery_{{{paramName}}} = {{#isString}}{{^isEnum}}strdup({{/isEnum}}{{/isString}}({{{paramName}}}){{#isString}}{{^isEnum}}){{/isEnum}}{{/isString}};
|
||||
{{/isBoolean}}
|
||||
{{/isInteger}}
|
||||
keyPairQuery_{{paramName}} = keyValuePair_create(keyQuery_{{{paramName}}}, {{#isEnum}}(void *)strdup({{{operationId}}}_{{enumName}}_ToString(
|
||||
{{/isEnum}}{{^isString}}&{{/isString}}valueQuery_{{{paramName}}}{{#isEnum}})){{/isEnum}});
|
||||
{{/isEnum}}{{^isString}}{{^isInteger}}{{^isBoolean}}&{{/isBoolean}}{{/isInteger}}{{/isString}}valueQuery_{{{paramName}}}{{#isEnum}})){{/isEnum}});
|
||||
list_addElement(localVarQueryParameters,keyPairQuery_{{paramName}});
|
||||
{{/isListContainer}}
|
||||
}
|
||||
|
||||
34
samples/client/petstore/c/.openapi-generator/FILES
Normal file
34
samples/client/petstore/c/.openapi-generator/FILES
Normal file
@@ -0,0 +1,34 @@
|
||||
README.md
|
||||
api/PetAPI.c
|
||||
api/PetAPI.h
|
||||
api/StoreAPI.c
|
||||
api/StoreAPI.h
|
||||
api/UserAPI.c
|
||||
api/UserAPI.h
|
||||
external/cJSON.c
|
||||
external/cJSON.h
|
||||
external/cJSON.licence
|
||||
include/apiClient.h
|
||||
include/binary.h
|
||||
include/keyValuePair.h
|
||||
include/list.h
|
||||
libcurl.licence
|
||||
model/api_response.c
|
||||
model/api_response.h
|
||||
model/category.c
|
||||
model/category.h
|
||||
model/object.c
|
||||
model/object.h
|
||||
model/order.c
|
||||
model/order.h
|
||||
model/pet.c
|
||||
model/pet.h
|
||||
model/tag.c
|
||||
model/tag.h
|
||||
model/user.c
|
||||
model/user.h
|
||||
src/apiClient.c
|
||||
src/apiKey.c
|
||||
src/binary.c
|
||||
src/list.c
|
||||
uncrustify-rules.cfg
|
||||
@@ -1 +1 @@
|
||||
4.3.1-SNAPSHOT
|
||||
5.0.0-SNAPSHOT
|
||||
@@ -3,7 +3,7 @@
|
||||
#include <ctype.h>
|
||||
#include "PetAPI.h"
|
||||
|
||||
|
||||
#define MAX_NUMBER_LENGTH 16
|
||||
#define MAX_BUFFER_LENGTH 4096
|
||||
#define intToStr(dst, src) \
|
||||
do {\
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#include <ctype.h>
|
||||
#include "StoreAPI.h"
|
||||
|
||||
|
||||
#define MAX_NUMBER_LENGTH 16
|
||||
#define MAX_BUFFER_LENGTH 4096
|
||||
#define intToStr(dst, src) \
|
||||
do {\
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#include <ctype.h>
|
||||
#include "UserAPI.h"
|
||||
|
||||
|
||||
#define MAX_NUMBER_LENGTH 16
|
||||
#define MAX_BUFFER_LENGTH 4096
|
||||
#define intToStr(dst, src) \
|
||||
do {\
|
||||
|
||||
Reference in New Issue
Block a user