@Override
 @Deprecated
 public void notify(Response<?> response) throws CopperRuntimeException {
   monitoringDataCollector.submitAdapterWfNotify(
       response.getCorrelationId(), response.getResponse(), adapter);
   processingEngine.notify(response);
 }
 @Override
 public void notify(List<Response<?>> responses, Connection c) throws CopperRuntimeException {
   try {
     for (Response<?> r : responses) {
       if (r.getResponseId() == null) {
         r.setResponseId(createUUID());
       }
     }
     dbStorage.notify(responses, c);
   } catch (RuntimeException e) {
     throw e;
   } catch (Exception e) {
     throw new CopperRuntimeException(e);
   }
 }
 @Override
 public void notify(Response<?> response, Acknowledge ack) {
   if (logger.isTraceEnabled()) logger.trace("notify(" + response + ")");
   try {
     if (response.getResponseId() == null) {
       response.setResponseId(createUUID());
     }
     startupBlocker.pass();
     dbStorage.notify(response, ack);
     if (notifyProcessorPoolsOnResponse) {
       for (PersistentProcessorPool ppp : processorPoolManager.processorPools()) {
         ppp.doNotify();
       }
     }
   } catch (Exception e) {
     throw new CopperRuntimeException("notify failed", e);
   }
 }