code: private List<SpecExecutor> getSpecExecutors(Config edgeConfig)
        throws URISyntaxException {
      //Get the logical names of SpecExecutors where the FlowEdge can be executed.
      List<String> specExecutorNames = ConfigUtils.getStringList(edgeConfig, FlowGraphConfigurationKeys.FLOW_EDGE_SPEC_EXECUTORS_KEY);
      //Load all the SpecExecutor configurations for this FlowEdge from the SpecExecutor Catalog.
      List<SpecExecutor> specExecutors = new ArrayList<>();
      for (String specExecutorName: specExecutorNames) {
        URI specExecutorUri = new URI(specExecutorName);
        specExecutors.add(this.topologySpecMap.get(specExecutorUri).getSpecExecutor());
      }
      return specExecutors;
    }
docs: This method first retrieves  the logical names of all the {@link org.apache.gobblin.runtime.api.SpecExecutor}s
  for this edge and returns the SpecExecutors from the {@link TopologySpec} map.
  @param edgeConfig containing the logical names of SpecExecutors for this edge.
  @return a {@link List<SpecExecutor>}s for this edge.