Respond with 404 if add-on is missing in add-on service (#3989)

* Respond with 404 if add-on is missing in add-on service

Signed-off-by: Jan N. Klug <github@klug.nrw>
This commit is contained in:
J-N-K
2023-12-31 14:56:15 +01:00
committed by GitHub
parent 8b14d56e2e
commit 2abe4e20ed
@@ -253,9 +253,10 @@ public class AddonResource implements RESTResource {
public Response installAddon(final @PathParam("addonId") @Parameter(description = "addon ID") String addonId,
@QueryParam("serviceId") @Parameter(description = "service ID") @Nullable String serviceId) {
AddonService addonService = (serviceId != null) ? getServiceById(serviceId) : getDefaultService();
if (addonService == null) {
if (addonService == null || addonService.getAddon(addonId, null) == null) {
return Response.status(HttpStatus.NOT_FOUND_404).build();
}
ThreadPoolManager.getPool(THREAD_POOL_NAME).submit(() -> {
try {
addonService.install(addonId);
@@ -294,7 +295,7 @@ public class AddonResource implements RESTResource {
public Response uninstallAddon(final @PathParam("addonId") @Parameter(description = "addon ID") String addonId,
@QueryParam("serviceId") @Parameter(description = "service ID") @Nullable String serviceId) {
AddonService addonService = (serviceId != null) ? getServiceById(serviceId) : getDefaultService();
if (addonService == null) {
if (addonService == null || addonService.getAddon(addonId, null) == null) {
return Response.status(HttpStatus.NOT_FOUND_404).build();
}
ThreadPoolManager.getPool(THREAD_POOL_NAME).submit(() -> {