@ApiResponse(
responseCode = "404",
description = "Enrichment Information type is not found", //
- content = @Content(schema = @Schema(implementation = ErrorResponse.ErrorInfo.class))) //
+ content = @Content(schema = @Schema(implementation = ErrorResponse.ErrorInfo.class))),
+ @ApiResponse(
+ responseCode = "400",
+ description = "Input validation failed", //
+ content = @Content(schema = @Schema(implementation = ErrorResponse.ErrorInfo.class))), //
+ @ApiResponse(
+ responseCode = "409",
+ description = "Cannot modify job type", //
+ content = @Content(schema = @Schema(implementation = ErrorResponse.ErrorInfo.class)))
+
})
+
public Mono<ResponseEntity<Object>> putIndividualEiJob( //
@PathVariable("eiJobId") String eiJobId, //
@RequestBody A1eEiJobInfo eiJobObject) {
.flatMap(this::startEiJob) //
.doOnNext(newEiJob -> this.eiJobs.put(newEiJob)) //
.flatMap(newEiJob -> Mono.just(new ResponseEntity<>(isNewJob ? HttpStatus.CREATED : HttpStatus.OK)))
- .onErrorResume(throwable -> Mono.just(ErrorResponse.create(throwable, HttpStatus.NOT_FOUND)));
+ .onErrorResume(throwable -> Mono.just(ErrorResponse.create(throwable, HttpStatus.INTERNAL_SERVER_ERROR)));
}
private Mono<InfoJob> startEiJob(InfoJob newEiJob) {
if (url != null && !url.isEmpty()) {
URI uri = new URI(url);
if (!uri.isAbsolute()) {
- throw new ServiceException("URI: " + url + " is not absolute", HttpStatus.CONFLICT);
+ throw new ServiceException("URI: " + url + " is not absolute", HttpStatus.BAD_REQUEST);
}
}
}
JSONObject json = new JSONObject(objectAsString);
schema.validate(json);
} catch (Exception e) {
- throw new ServiceException("Json validation failure " + e.toString(), HttpStatus.CONFLICT);
+ throw new ServiceException("Json validation failure " + e.toString(), HttpStatus.BAD_REQUEST);
}
}
}