public void updateSource(String sourceName, SourceConfig sourceConfig) throws Exception {

    boolean debug = log.isDebugEnabled();

    if (debug) {
      log.debug(TextUtil.repeat("-", 70));
      log.debug("Updating source " + sourceName + ".");
    }

    Partition partition = getPartition();
    if (partition == null) {
      PartitionConfig partitionConfig = getPartitionConfig();
      SourceConfigManager sourceConfigManager = partitionConfig.getSourceConfigManager();
      sourceConfigManager.updateSourceConfig(sourceConfig);

    } else {
      SourceManager sourceManager = partition.getSourceManager();
      sourceManager.updateSource(sourceConfig);
    }
    /*
            Partition partition = getPartition();
            boolean running = false;

            if (partition != null) {
                SourceManager sourceManager = partition.getSourceManager();
                running = sourceManager.isRunning(sourceName);
                if (running) sourceManager.stopSource(sourceName);
            }

            PartitionConfig partitionConfig = getPartitionConfig();
            SourceConfigManager sourceConfigManager = partitionConfig.getSourceConfigManager();
            sourceConfigManager.updateSourceConfig(sourceConfig);

            if (partition != null) {
                SourceManager sourceManager = partition.getSourceManager();
                if (running) sourceManager.startSource(sourceName);
            }
    */
  }