cloudfoundry / cloudfoundry/cf-java-client
UpdateProcessRequest cannot remove a timeout or invocationTimeout
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 334
- Forks
- 319
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
We are on version 5.12.1-RELEASE.
The default ObjectMapper is configured with setSerializationInclusion(NON_NULL) .
When removing a timeout the request should set it explicitly to null, which is not possible using this configuration. Hence an UpdateProcessRequest can, by default, never remove a timeout.
See the following screenshot for a debugging example result
The code above is called by invoking the following Mono:
Mono.just("<app-id>")
.flatMap(appId -> operator
.getCloudFoundryClient()
.applicationsV3()
.getProcess(GetApplicationProcessRequest.builder().applicationId(appId).type("web").build())
.flatMap(process -> {
return operator
.getCloudFoundryClient()
.processes().update(
UpdateProcessRequest.builder()
.processId(process.getId())
.healthCheck(HealthCheck.builder()
.type(HealthCheckType.from(targetState.manifest().getHealthCheckType().toString()))
.data(Data.builder()
.endpoint(targetState.manifest().getHealthCheckHttpEndpoint())
.timeout(targetState.manifest().getTimeout())
.build())
.build())
.build()
).doOnSuccess(updateProcessResponse -> {
log.info("Updated health check for application");
});
}).then()
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con cloudfoundry-client-reactor/src/main/java/org/cloudfoundry/reactor/_DefaultConnectionContext.java, donde el ObjectMapper predeterminado está configurado con NON_NULL, y luego sigue UpdateProcessRequest a través de processes().update. Reproduce el caso de eliminación del timeout del issue y verifica que un timeout o invocationTimeout establecido explícitamente en null se conserve en la solicitud saliente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- api
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100