client use enums

This commit is contained in:
Niclas Thobaben 2021-10-06 20:26:43 +02:00
parent 757367762f
commit f6ca33326e
2 changed files with 12 additions and 12 deletions

View file

@ -15,7 +15,7 @@ module.exports = (service) => {
service.pascalcase = utils.pascalcase(service.name) service.pascalcase = utils.pascalcase(service.name)
service.configName = `${utils.pascalcase(service.name)}ApiClientConfig` service.configName = `${utils.pascalcase(service.name)}ApiClientConfig`
service.package = service.namespace service.package = service.namespace
const resources = javaClient.mapResources(service.resources, service.namespace) const resources = javaClient.mapResources(service.resources, service.namespace, service)
service.headers = service.headers.map(header => { service.headers = service.headers.map(header => {
header.type = javaType.mapJavaType(header.type, service.namespace) header.type = javaType.mapJavaType(header.type, service.namespace)

View file

@ -18,27 +18,27 @@ function formatOperationName(operation) {
} }
function mapParameter(parameter, namespace, operation) { function mapParameter(parameter, namespace, operation, service) {
parameter.label = utils.camelcase(parameter.name) parameter.label = utils.camelcase(parameter.name)
parameter.type = javaType.mapJavaType(parameter.type, namespace) parameter.type = javaType.mapJavaType(parameter.type, namespace, '', service)
parameter.op = operation parameter.op = operation
parameter.isPath = parameter.location === 'Path' parameter.isPath = parameter.location === 'Path'
parameter.default = javaType.mapDefaultValue(parameter.type, parameter.default) parameter.default = javaType.mapDefaultValue(parameter.type, parameter.default)
return parameter return parameter
} }
function mapOperation(operation, namespace) { function mapOperation(operation, namespace, service) {
operation.headers = operation.parameters operation.headers = operation.parameters
.filter(param => param.location === 'Header') .filter(param => param.location === 'Header')
.map(param => mapParameter(param, namespace, operation)) .map(param => mapParameter(param, namespace, operation, service))
operation.query = operation.parameters operation.query = operation.parameters
.filter(param => param.location === 'Query') .filter(param => param.location === 'Query')
.map(param => mapParameter(param, namespace, operation)) .map(param => mapParameter(param, namespace, operation, service))
operation.parameters = operation.parameters operation.parameters = operation.parameters
.filter(param => param.location === 'Path') .filter(param => param.location === 'Path')
.map(param => mapParameter(param, namespace, operation)) .map(param => mapParameter(param, namespace, operation, service))
operation.name = formatOperationName(operation) operation.name = formatOperationName(operation)
operation.camelcase = utils.camelcase(operation.name) operation.camelcase = utils.camelcase(operation.name)
@ -59,7 +59,7 @@ function mapOperation(operation, namespace) {
} }
}) })
operation.responses = operation.responses.map(resp => { operation.responses = operation.responses.map(resp => {
let type = javaType.mapJavaType(resp.type, namespace) let type = javaType.mapJavaType(resp.type, namespac, service)
if(resp.type !== 'unit') { if(resp.type !== 'unit') {
resp.label = `${utils.camelcase(type.baseType || 'result')}${resp.code.integer.value}` resp.label = `${utils.camelcase(type.baseType || 'result')}${resp.code.integer.value}`
} }
@ -75,7 +75,7 @@ function mapOperation(operation, namespace) {
label: bodyName, label: bodyName,
required: true, required: true,
location: 'Body', location: 'Body',
type: javaType.mapJavaType(operation.body.type, namespace) type: javaType.mapJavaType(operation.body.type, namespace, service)
} }
] ]
operation.body.name = bodyName operation.body.name = bodyName
@ -91,11 +91,11 @@ function mapOperation(operation, namespace) {
} }
module.exports = { module.exports = {
mapResources: (resources, namespace) => { mapResources: (resources, namespace, service) => {
return resources.map(resource => { return resources.map(resource => {
resource.type = javaType.mapJavaType(resource.type, namespace) resource.type = javaType.mapJavaType(resource.type, namespace, '', service)
resource.name = `${utils.pascalcase(resource.plural)}Resource` resource.name = `${utils.pascalcase(resource.plural)}Resource`
resource.operations = resource.operations.map(op => mapOperation(op, namespace)) resource.operations = resource.operations.map(op => mapOperation(op, namespace, service))
resource.package = `${namespace}.client` resource.package = `${namespace}.client`
resource.dir = resource.package.replace(/\./g, '/') resource.dir = resource.package.replace(/\./g, '/')