private ServiceResponse<KieScannerResource> disposeScanner(
     String id, KieScannerResource resource, KieContainerInstance kci) {
   if (kci.getScanner() == null) {
     return new ServiceResponse<KieScannerResource>(
         ServiceResponse.ResponseType.SUCCESS,
         "Invalid call. Scanner already disposed. ",
         new KieScannerResource(KieScannerStatus.DISPOSED));
   }
   if (KieScannerStatus.STARTED.equals(mapStatus(kci.getScanner().getStatus()))
       || KieScannerStatus.SCANNING.equals(mapStatus(kci.getScanner().getStatus()))) {
     ServiceResponse<KieScannerResource> response = stopScanner(id, resource, kci);
     if (ResponseType.FAILURE.equals(response.getType())) {
       return response;
     }
   }
   kci.getScanner().shutdown();
   kci.setScanner(null);
   return new ServiceResponse<KieScannerResource>(
       ServiceResponse.ResponseType.SUCCESS,
       "Kie scanner successfuly shutdown.",
       new KieScannerResource(KieScannerStatus.DISPOSED));
 }
 private ServiceResponse<KieScannerResource> stopScanner(
     String id, KieScannerResource resource, KieContainerInstance kci) {
   if (kci.getScanner() == null) {
     return new ServiceResponse<KieScannerResource>(
         ServiceResponse.ResponseType.FAILURE,
         "Invalid call. Scanner is not instantiated. ",
         new KieScannerResource(KieScannerStatus.DISPOSED));
   }
   if (KieScannerStatus.STARTED.equals(mapStatus(kci.getScanner().getStatus()))
       || KieScannerStatus.SCANNING.equals(mapStatus(kci.getScanner().getStatus()))) {
     kci.getScanner().stop();
     return new ServiceResponse<KieScannerResource>(
         ServiceResponse.ResponseType.SUCCESS,
         "Kie scanner successfuly stopped.",
         new KieScannerResource(mapStatus(kci.getScanner().getStatus())));
   } else {
     return new ServiceResponse<KieScannerResource>(
         ServiceResponse.ResponseType.FAILURE,
         "Invalid kie scanner status: " + mapStatus(kci.getScanner().getStatus()),
         new KieScannerResource(mapStatus(kci.getScanner().getStatus())));
   }
 }