docs: public void remove(LookupDataAdapter dataAdapter) {
          if (state() == State.STOPPING || state() == State.TERMINATED) {
              LOG.debug("Service is in state <{}> - not removing job for <{}/{}/@{}>", state(), dataAdapter.name(), dataAdapter.id(), objectId(dataAdapter));
              return;
          }
  
          // Using the adapter object ID here to make it possible to have multiple jobs for the same adapter
          final String instanceId = objectId(dataAdapter);
          if (futures.containsKey(instanceId)) {
              LOG.info("Removing job for <{}/{}/@{}>", dataAdapter.name(), dataAdapter.id(), instanceId);
          }
          // Try to cancel the job even if the check above fails to avoid race conditions
          cancel(futures.remove(instanceId));
      }