org.apache.storm

## Class StormSubmitter

- java.lang.Object
- - org.apache.storm.StormSubmitter

-     public class StormSubmitter
      extends Object

  Use this class to submit topologies to run on the Storm cluster. You should run your program with the “storm jar” command from the command-line, and then use this class to submit your topologies.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `StormSubmitter.ProgressListener` Interface use to track progress of file upload.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static org.slf4j.Logger` | `LOG`
    `static Pattern` | `zkDigestPattern`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `StormSubmitter()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Map<String,Object>` | `prepareZookeeperAuthentication(Map<String,Object> conf)`
    `static void` | `pushCredentials(String name, Map<String,Object> topoConf, Map<String,String> credentials)` Push a new set of credentials to the running topology.
    `static void` | `pushCredentials(String name, Map<String,Object> topoConf, Map<String,String> credentials, String expectedUser)` Push a new set of credentials to the running topology.
    `static String` | `submitJar(Map<String,Object> conf, String localJar)` Submit jar file.
    `static String` | `submitJar(Map<String,Object> conf, String localJar, StormSubmitter.ProgressListener listener)` Submit jar file.
    `static String` | `submitJarAs(Map<String,Object> conf, String localJar, StormSubmitter.ProgressListener listener, NimbusClient client)`
    `static String` | `submitJarAs(Map<String,Object> conf, String localJar, StormSubmitter.ProgressListener listener, String asUser)`
    `static void` | `submitTopology(String name, Map<String,Object> topoConf, StormTopology topology)` Submits a topology to run on the cluster.
    `static void` | `submitTopology(String name, Map<String,Object> topoConf, StormTopology topology, SubmitOptions opts)` Submits a topology to run on the cluster.
    `static void` | `submitTopology(String name, Map<String,Object> topoConf, StormTopology topology, SubmitOptions opts, StormSubmitter.ProgressListener progressListener)` Submits a topology to run on the cluster.
    `static void` | `submitTopologyAs(String name, Map<String,Object> topoConf, StormTopology topology, SubmitOptions opts, StormSubmitter.ProgressListener progressListener, String asUser)` Submits a topology to run on the cluster as a particular user.
    `static void` | `submitTopologyWithProgressBar(String name, Map<String,Object> topoConf, StormTopology topology)` Submits a topology to run on the cluster with a progress bar.
    `static void` | `submitTopologyWithProgressBar(String name, Map<String,Object> topoConf, StormTopology topology, SubmitOptions opts)` Submits a topology to run on the cluster with a progress bar.
    `static boolean` | `validateZKDigestPayload(String payload)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### LOG

          public static final org.slf4j.Logger LOG

    - #### zkDigestPattern

          public static final Pattern zkDigestPattern

  - ### Constructor Detail

    - #### StormSubmitter

          public StormSubmitter()

  - ### Method Detail

    - #### validateZKDigestPayload

          public static boolean validateZKDigestPayload(String payload)

    - #### prepareZookeeperAuthentication

          public static Map<String,Object> prepareZookeeperAuthentication(Map<String,Object> conf)

    - #### pushCredentials

          public static void pushCredentials(String name,
                                             Map<String,Object> topoConf,
                                             Map<String,String> credentials)
                                      throws AuthorizationException,
                                             NotAliveException,
                                             InvalidTopologyException

      Push a new set of credentials to the running topology.

      Parameters:
        `name` - the name of the topology to push credentials to.
        `topoConf` - the topology-specific configuration, if desired. See `Config`.
        `credentials` - the credentials to push.
      Throws:
        `AuthorizationException` - if you are not authorized ot push credentials.
        `NotAliveException` - if the topology is not alive
        `InvalidTopologyException` - if any other error happens

    - #### pushCredentials

          public static void pushCredentials(String name,
                                             Map<String,Object> topoConf,
                                             Map<String,String> credentials,
                                             String expectedUser)
                                      throws AuthorizationException,
                                             NotAliveException,
                                             InvalidTopologyException

      Push a new set of credentials to the running topology.

      Parameters:
        `name` - the name of the topology to push credentials to.
        `topoConf` - the topology-specific configuration, if desired. See `Config`.
        `credentials` - the credentials to push.
        `expectedUser` - the user you expect the topology to be owned by.
      Throws:
        `AuthorizationException` - if you are not authorized ot push credentials.
        `NotAliveException` - if the topology is not alive
        `InvalidTopologyException` - if any other error happens

    - #### submitTopology

          public static void submitTopology(String name,
                                            Map<String,Object> topoConf,
                                            StormTopology topology)
                                     throws AlreadyAliveException,
                                            InvalidTopologyException,
                                            AuthorizationException

      Submits a topology to run on the cluster. A topology runs forever or until explicitly killed.

      Parameters:
        `name` - the name of the storm.
        `topoConf` - the topology-specific configuration. See `Config`.
        `topology` - the processing to execute.
      Throws:
        `AlreadyAliveException` - if a topology with this name is already running
        `InvalidTopologyException` - if an invalid topology was submitted
        `AuthorizationException` - if authorization is failed

    - #### submitTopology

          public static void submitTopology(String name,
                                            Map<String,Object> topoConf,
                                            StormTopology topology,
                                            SubmitOptions opts)
                                     throws AlreadyAliveException,
                                            InvalidTopologyException,
                                            AuthorizationException

      Submits a topology to run on the cluster. A topology runs forever or until explicitly killed.

      Parameters:
        `name` - the name of the storm.
        `topoConf` - the topology-specific configuration. See `Config`.
        `topology` - the processing to execute.
        `opts` - to manipulate the starting of the topology.
      Throws:
        `AlreadyAliveException` - if a topology with this name is already running
        `InvalidTopologyException` - if an invalid topology was submitted
        `AuthorizationException` - if authorization is failed

    - #### submitTopology

          public static void submitTopology(String name,
                                            Map<String,Object> topoConf,
                                            StormTopology topology,
                                            SubmitOptions opts,
                                            StormSubmitter.ProgressListener progressListener)
                                     throws AlreadyAliveException,
                                            InvalidTopologyException,
                                            AuthorizationException

      Submits a topology to run on the cluster. A topology runs forever or until explicitly killed.

      Parameters:
        `name` - the name of the storm.
        `topoConf` - the topology-specific configuration. See `Config`.
        `topology` - the processing to execute.
        `opts` - to manipulate the starting of the topology
        `progressListener` - to track the progress of the jar upload process
      Throws:
        `AlreadyAliveException` - if a topology with this name is already running
        `InvalidTopologyException` - if an invalid topology was submitted
        `AuthorizationException` - if authorization is failed

    - #### submitTopologyAs

          public static void submitTopologyAs(String name,
                                              Map<String,Object> topoConf,
                                              StormTopology topology,
                                              SubmitOptions opts,
                                              StormSubmitter.ProgressListener progressListener,
                                              String asUser)
                                       throws AlreadyAliveException,
                                              InvalidTopologyException,
                                              AuthorizationException,
                                              IllegalArgumentException

      Submits a topology to run on the cluster as a particular user. A topology runs forever or until explicitly killed.

      Parameters:
        `asUser` - The user as which this topology should be submitted.
      Throws:
        `IllegalArgumentException` - thrown if configs will yield an unschedulable topology. validateConfs validates confs
        `AlreadyAliveException`
        `InvalidTopologyException`
        `AuthorizationException`

    - #### submitTopologyWithProgressBar

          public static void submitTopologyWithProgressBar(String name,
                                                           Map<String,Object> topoConf,
                                                           StormTopology topology)
                                                    throws AlreadyAliveException,
                                                           InvalidTopologyException,
                                                           AuthorizationException

      Submits a topology to run on the cluster with a progress bar. A topology runs forever or until explicitly killed.

      Parameters:
        `name` - the name of the storm.
        `topoConf` - the topology-specific configuration. See `Config`.
        `topology` - the processing to execute.
      Throws:
        `AlreadyAliveException` - if a topology with this name is already running
        `InvalidTopologyException` - if an invalid topology was submitted
        `AuthorizationException` - if authorization is failed

    - #### submitTopologyWithProgressBar

          public static void submitTopologyWithProgressBar(String name,
                                                           Map<String,Object> topoConf,
                                                           StormTopology topology,
                                                           SubmitOptions opts)
                                                    throws AlreadyAliveException,
                                                           InvalidTopologyException,
                                                           AuthorizationException

      Submits a topology to run on the cluster with a progress bar. A topology runs forever or until explicitly killed.

      Parameters:
        `name` - the name of the storm.
        `topoConf` - the topology-specific configuration. See `Config`.
        `topology` - the processing to execute.
        `opts` - to manipulate the starting of the topology
      Throws:
        `AlreadyAliveException` - if a topology with this name is already running
        `InvalidTopologyException` - if an invalid topology was submitted
        `AuthorizationException` - if authorization is failed

    - #### submitJar

          public static String submitJar(Map<String,Object> conf,
                                         String localJar)

      Submit jar file.

      Parameters:
        `conf` - the topology-specific configuration. See `Config`.
        `localJar` - file path of the jar file to submit
      Returns:
        the remote location of the submitted jar

    - #### submitJar

          public static String submitJar(Map<String,Object> conf,
                                         String localJar,
                                         StormSubmitter.ProgressListener listener)

      Submit jar file.

      Parameters:
        `conf` - the topology-specific configuration. See `Config`.
        `localJar` - file path of the jar file to submit
        `listener` - progress listener to track the jar file upload
      Returns:
        the remote location of the submitted jar

    - #### submitJarAs

          public static String submitJarAs(Map<String,Object> conf,
                                           String localJar,
                                           StormSubmitter.ProgressListener listener,
                                           NimbusClient client)

    - #### submitJarAs

          public static String submitJarAs(Map<String,Object> conf,
                                           String localJar,
                                           StormSubmitter.ProgressListener listener,
                                           String asUser)

Copyright © 2019 The Apache Software Foundation. All rights reserved.