@SuppressWarnings("rawtypes")
  public static void submitTopology(
      String name,
      Map stormConfig,
      StormTopology topology) throws AlreadyAliveException, InvalidTopologyException {

    // First do topology config translation. Bolt and Spout config translation is handled
    // in their own DeclarerImpl classes.
    org.apache.heron.api.Config heronConfig = ConfigUtils.translateConfig(stormConfig);

    // Now submit a heron topology
    try {
      HeronSubmitter.submitTopology(name, heronConfig, topology.getStormTopology());
    } catch (org.apache.heron.api.exception.AlreadyAliveException e) {
      throw new AlreadyAliveException();
    } catch (org.apache.heron.api.exception.InvalidTopologyException e) {
      throw new InvalidTopologyException();
    }
  }
@ SuppressWarnings ( "rawtypes" ) public static void submitTopology ( String name , Map stormConfig , StormTopology topology ) throws AlreadyAliveException , InvalidTopologyException { org . apache . heron . api . Config heronConfig = ConfigUtils . translateConfig ( stormConfig ) ; try { HeronSubmitter . submitTopology ( name , heronConfig , topology . getStormTopology ( ) ) ; } catch ( org . apache . heron . api . exception . AlreadyAliveException e ) { throw new AlreadyAliveException ( ) ; } catch ( org . apache . heron . api . exception . InvalidTopologyException e ) { throw new InvalidTopologyException ( ) ; } }
Submits a topology to run on the cluster. A topology runs forever or until
explicitly killed.

@param name the name of the storm.
@param stormConfig the topology-specific configuration. See {@link Config}.
@param topology the processing to execute.
@throws AlreadyAliveException if a topology with this name is already running
@throws InvalidTopologyException if an invalid topology was submitted