code: @Override
    public void onUpdateSpec(Spec updatedSpec) {
      if (this.helixManager.isPresent() && !this.helixManager.get().isConnected()) {
        // Specs in store will be notified when Scheduler is added as listener to FlowCatalog, so ignore
        // .. Specs if in cluster mode and Helix is not yet initialized
        _log.info("System not yet initialized. Skipping Spec Update: " + updatedSpec);
        return;
      }
  
      _log.info("Spec changed: " + updatedSpec);
  
      if (!(updatedSpec instanceof FlowSpec)) {
        return;
      }
  
      try {
        onDeleteSpec(updatedSpec.getUri(), updatedSpec.getVersion());
      } catch (Exception e) {
        _log.error("Failed to update Spec: " + updatedSpec, e);
      }
      try {
        onAddSpec(updatedSpec);
      } catch (Exception e) {
        _log.error("Failed to update Spec: " + updatedSpec, e);
      }
    }
docs: {@inheritDoc}