## Uses of Interface
io.vertx.core.Promise

- Packages that use Promise
  Package | Description
  --- | ---
  io.vertx.circuitbreaker |
  io.vertx.core |
  io.vertx.core.spi |
  io.vertx.core.spi.cluster |
  io.vertx.ext.bridge |
  io.vertx.ext.cluster.infinispan |
  io.vertx.ext.eventbus.bridge.tcp |
  io.vertx.ext.healthchecks |
  io.vertx.ext.shell |
  io.vertx.ext.unit |
  io.vertx.ext.web.handler.graphql.ws |
  io.vertx.ext.web.handler.sockjs |
  io.vertx.ext.web.healthchecks |
  io.vertx.grpc |
  io.vertx.lang.groovy |
  io.vertx.rabbitmq |
  io.vertx.reactivex.core |
  io.vertx.rxjava3.core |
  io.vertx.servicediscovery.consul |
  io.vertx.servicediscovery.docker |
  io.vertx.servicediscovery.kubernetes |
  io.vertx.servicediscovery.spi |
  io.vertx.servicediscovery.zookeeper |
  io.vertx.spi.cluster.hazelcast |
  io.vertx.spi.cluster.ignite |
  io.vertx.spi.cluster.zookeeper |

- - ### Uses of Promise in io.vertx.circuitbreaker

    Methods in io.vertx.circuitbreaker with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> CircuitBreaker` | CircuitBreaker.`executeAndReport​(Promise<T> resultPromise, Handler<Promise<T>> command)` | Same as `CircuitBreaker.executeAndReportWithFallback(Promise, Handler, Function)` but using the circuit breaker default fallback.
    `<T> CircuitBreaker` | CircuitBreaker.`executeAndReportWithFallback​(Promise<T> resultPromise, Handler<Promise<T>> command, java.util.function.Function<Throwable,​T> fallback)` | Executes the given operation with the circuit breaker control.

    Method parameters in io.vertx.circuitbreaker with type arguments of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> Future<T>` | CircuitBreaker.`execute​(Handler<Promise<T>> command)` | Same as `CircuitBreaker.executeWithFallback(Handler, Function)` but using the circuit breaker default fallback.
    `<T> CircuitBreaker` | CircuitBreaker.`executeAndReport​(Promise<T> resultPromise, Handler<Promise<T>> command)` | Same as `CircuitBreaker.executeAndReportWithFallback(Promise, Handler, Function)` but using the circuit breaker default fallback.
    `<T> CircuitBreaker` | CircuitBreaker.`executeAndReportWithFallback​(Promise<T> resultPromise, Handler<Promise<T>> command, java.util.function.Function<Throwable,​T> fallback)` | Executes the given operation with the circuit breaker control.
    `<T> Future<T>` | CircuitBreaker.`executeWithFallback​(Handler<Promise<T>> command, java.util.function.Function<Throwable,​T> fallback)` | Executes the given operation with the circuit breaker control.

  - ### Uses of Promise in io.vertx.core

    Methods in io.vertx.core that return Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> Promise<T>` | Promise.`promise()` | Create a promise that hasn't completed yet

    Methods in io.vertx.core with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Closeable.`close​(Promise<Void> completion)` | Close this resource, the `completion` promise must be notified when the operation has completed.
    `void` | AbstractVerticle.`start​(Promise<Void> startPromise)` | Start the verticle.
    `void` | Verticle.`start​(Promise<Void> startPromise)` | Start the verticle instance.
    `void` | AbstractVerticle.`stop​(Promise<Void> stopPromise)` | Stop the verticle.
    `void` | Verticle.`stop​(Promise<Void> stopPromise)` | Stop the verticle instance.

    Method parameters in io.vertx.core with type arguments of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> Future<T>` | Future.`future​(Handler<Promise<T>> handler)` | Create a promise and pass it to the `handler`, and then returns this future's promise.

  - ### Uses of Promise in io.vertx.core.spi

    Methods in io.vertx.core.spi with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | VerticleFactory.`createVerticle​(String verticleName, ClassLoader classLoader, Promise<Callable<Verticle>> promise)` | Deprecated. deprecated, instead implement `VerticleFactory.createVerticle2(String, ClassLoader, Promise)`
    `default void` | VerticleFactory.`createVerticle2​(String verticleName, ClassLoader classLoader, Promise<Callable<? extends Deployable>> promise)` | Create a verticle instance.

  - ### Uses of Promise in io.vertx.core.spi.cluster

    Methods in io.vertx.core.spi.cluster with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ClusterManager.`addRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` | Share a new messaging handler registration with other nodes in the cluster.
    `<K,​V> void` | ClusterManager.`getAsyncMap​(String name, Promise<AsyncMap<K,​V>> promise)` | Return an `AsyncMap` for the given `name`.
    `void` | ClusterManager.`getCounter​(String name, Promise<Counter> promise)` | Return a `Counter` for the given `name`.
    `void` | ClusterManager.`getLockWithTimeout​(String name, long timeout, Promise<Lock> promise)` | Attempts to acquire a `Lock` for the given `name` within `timeout` milliseconds.
    `void` | ClusterManager.`getNodeInfo​(String nodeId, Promise<NodeInfo> promise)` | Get details about a specific node in the cluster.
    `void` | ClusterManager.`getRegistrations​(String address, Promise<List<RegistrationInfo>> promise)` | Get the messaging handler currently registered in the cluster.
    `void` | ClusterManager.`join​(Promise<Void> promise)` | Join the cluster.
    `void` | ClusterManager.`leave​(Promise<Void> promise)` | Leave the cluster.
    `void` | ClusterManager.`removeRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` | Signal removal of a messaging handler registration to other nodes in the cluster.
    `void` | ClusterManager.`setNodeInfo​(NodeInfo nodeInfo, Promise<Void> promise)` | Store the details about this clustered node.

  - ### Uses of Promise in io.vertx.ext.bridge

    Subinterfaces of Promise in io.vertx.ext.bridge
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `BaseBridgeEvent` | Represents an event that occurs on the event bus bridge.

  - ### Uses of Promise in io.vertx.ext.cluster.infinispan

    Methods in io.vertx.ext.cluster.infinispan with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | InfinispanClusterManager.`addRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `<K,​V> void` | InfinispanClusterManager.`getAsyncMap​(String name, Promise<AsyncMap<K,​V>> promise)` |
    `void` | InfinispanClusterManager.`getCounter​(String name, Promise<Counter> promise)` |
    `void` | InfinispanClusterManager.`getLockWithTimeout​(String name, long timeout, Promise<Lock> prom)` |
    `void` | InfinispanClusterManager.`getNodeInfo​(String nodeId, Promise<NodeInfo> promise)` |
    `void` | InfinispanClusterManager.`getRegistrations​(String address, Promise<List<RegistrationInfo>> promise)` |
    `void` | InfinispanClusterManager.`join​(Promise<Void> promise)` |
    `void` | InfinispanClusterManager.`leave​(Promise<Void> promise)` |
    `void` | InfinispanClusterManager.`removeRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `void` | InfinispanClusterManager.`setNodeInfo​(NodeInfo nodeInfo, Promise<Void> promise)` |

  - ### Uses of Promise in io.vertx.ext.eventbus.bridge.tcp

    Subinterfaces of Promise in io.vertx.ext.eventbus.bridge.tcp
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `BridgeEvent` | Represents an event that occurs on the event bus bridge.

  - ### Uses of Promise in io.vertx.ext.healthchecks

    Method parameters in io.vertx.ext.healthchecks with type arguments of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `HealthChecks` | HealthChecks.`register​(String name, long timeout, Handler<Promise<Status>> procedure)` | Registers a health check procedure.
    `HealthChecks` | HealthChecks.`register​(String name, Handler<Promise<Status>> procedure)` | Registers a health check procedure.

  - ### Uses of Promise in io.vertx.ext.shell

    Methods in io.vertx.ext.shell with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ShellVerticle.`start​(Promise<Void> startFuture)` |

  - ### Uses of Promise in io.vertx.ext.unit

    Methods in io.vertx.ext.unit with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Completion.`resolve​(Promise<T> future)` | Completes the future upon completion, otherwise fails it.

  - ### Uses of Promise in io.vertx.ext.web.handler.graphql.ws

    Subinterfaces of Promise in io.vertx.ext.web.handler.graphql.ws
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `ConnectionInitEvent` |

  - ### Uses of Promise in io.vertx.ext.web.handler.sockjs

    Subinterfaces of Promise in io.vertx.ext.web.handler.sockjs
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `BridgeEvent` | Represents an event that occurs on the event bus bridge.

  - ### Uses of Promise in io.vertx.ext.web.healthchecks

    Method parameters in io.vertx.ext.web.healthchecks with type arguments of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `HealthCheckHandler` | HealthCheckHandler.`register​(String name, long timeout, Handler<Promise<Status>> procedure)` | Registers a health check procedure.
    `HealthCheckHandler` | HealthCheckHandler.`register​(String name, Handler<Promise<Status>> procedure)` | Registers a health check procedure.

  - ### Uses of Promise in io.vertx.grpc

    Methods in io.vertx.grpc with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `VertxServer` | VertxServer.`shutdown​(Promise<Void> completionHandler)` |

  - ### Uses of Promise in io.vertx.lang.groovy

    Methods in io.vertx.lang.groovy with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | GroovyVerticleFactory.`createVerticle​(String verticleName, ClassLoader classLoader, Promise<Callable<Verticle>> promise)` |
    `void` | ScriptVerticle.`start​(Promise<Void> startPromise)` | Start the verticle instance.
    `void` | ScriptVerticle.`stop​(Promise<Void> stopPromise)` | Stop the verticle instance.

  - ### Uses of Promise in io.vertx.rabbitmq

    Method parameters in io.vertx.rabbitmq with type arguments of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | RabbitMQClient.`addConnectionEstablishedCallback​(Handler<Promise<Void>> connectionEstablishedCallback)` | Set a callback to be called whenever a new connection is established.

  - ### Uses of Promise in io.vertx.reactivex.core

    Methods in io.vertx.reactivex.core that return Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `Promise` | Promise.`getDelegate()` |

    Methods in io.vertx.reactivex.core with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> Promise<T>` | Promise.`newInstance​(Promise arg)` |
    `static <T> Promise<T>` | Promise.`newInstance​(Promise arg, io.vertx.lang.rx.TypeArg<T> __typeArg_T)` |
    `void` | AbstractVerticle.`start​(Promise<Void> startFuture)` |
    `void` | AbstractVerticle.`stop​(Promise<Void> stopFuture)` |

    Constructors in io.vertx.reactivex.core with parameters of type Promise
    Constructor | Description
    --- | ---
    `Promise​(Promise delegate)` |

  - ### Uses of Promise in io.vertx.rxjava3.core

    Methods in io.vertx.rxjava3.core that return Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `Promise` | Promise.`getDelegate()` |

    Methods in io.vertx.rxjava3.core with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> Promise<T>` | Promise.`newInstance​(Promise arg)` |
    `static <T> Promise<T>` | Promise.`newInstance​(Promise arg, io.vertx.lang.rx.TypeArg<T> __typeArg_T)` |
    `void` | AbstractVerticle.`start​(Promise<Void> startFuture)` |
    `void` | AbstractVerticle.`stop​(Promise<Void> stopFuture)` |

    Constructors in io.vertx.rxjava3.core with parameters of type Promise
    Constructor | Description
    --- | ---
    `Promise​(Promise delegate)` |

  - ### Uses of Promise in io.vertx.servicediscovery.consul

    Methods in io.vertx.servicediscovery.consul with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `ImportedConsulService` | ImportedConsulService.`register​(ServicePublisher publisher, Promise<ImportedConsulService> completion)` | Registers the service and completes the given future when done.
    `void` | ConsulServiceImporter.`start​(Vertx vertx, ServicePublisher publisher, JsonObject configuration, Promise<Void> completion)` |
    `void` | ImportedConsulService.`unregister​(ServicePublisher publiher, Promise<Void> completion)` | Unregisters the service and completes the given future when done, if not `null`

  - ### Uses of Promise in io.vertx.servicediscovery.docker

    Methods in io.vertx.servicediscovery.docker with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | DockerLinksServiceImporter.`start​(Vertx vertx, ServicePublisher publisher, JsonObject configuration, Promise<Void> completion)` |

  - ### Uses of Promise in io.vertx.servicediscovery.kubernetes

    Methods in io.vertx.servicediscovery.kubernetes with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | KubernetesServiceImporter.`start​(Vertx vertx, ServicePublisher publisher, JsonObject configuration, Promise<Void> completion)` |

  - ### Uses of Promise in io.vertx.servicediscovery.spi

    Methods in io.vertx.servicediscovery.spi with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ServiceExporter.`init​(Vertx vertx, ServicePublisher publisher, JsonObject configuration, Promise<Void> future)` | Starts the exporter.
    `void` | ServiceImporter.`start​(Vertx vertx, ServicePublisher publisher, JsonObject configuration, Promise<Void> future)` | Starts the importer.

  - ### Uses of Promise in io.vertx.servicediscovery.zookeeper

    Methods in io.vertx.servicediscovery.zookeeper with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ZookeeperServiceImporter.`start​(Vertx vertx, ServicePublisher publisher, JsonObject configuration, Promise<Void> future)` |

  - ### Uses of Promise in io.vertx.spi.cluster.hazelcast

    Methods in io.vertx.spi.cluster.hazelcast that return types with arguments of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Handler<Promise<Status>>` | ClusterHealthCheck.`createProcedure​(Vertx vertx)` | Creates a ready-to-use Vert.x cluster `HealthChecks` procedure.

    Methods in io.vertx.spi.cluster.hazelcast with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | HazelcastClusterManager.`addRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `<K,​V> void` | HazelcastClusterManager.`getAsyncMap​(String name, Promise<AsyncMap<K,​V>> promise)` |
    `void` | HazelcastClusterManager.`getCounter​(String name, Promise<Counter> promise)` |
    `void` | HazelcastClusterManager.`getLockWithTimeout​(String name, long timeout, Promise<Lock> promise)` |
    `void` | HazelcastClusterManager.`getNodeInfo​(String nodeId, Promise<NodeInfo> promise)` |
    `void` | HazelcastClusterManager.`getRegistrations​(String address, Promise<List<RegistrationInfo>> promise)` |
    `void` | HazelcastClusterManager.`join​(Promise<Void> promise)` |
    `void` | HazelcastClusterManager.`leave​(Promise<Void> promise)` |
    `void` | HazelcastClusterManager.`removeRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `void` | HazelcastClusterManager.`setNodeInfo​(NodeInfo nodeInfo, Promise<Void> promise)` |

  - ### Uses of Promise in io.vertx.spi.cluster.ignite

    Methods in io.vertx.spi.cluster.ignite with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | IgniteClusterManager.`addRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `<K,​V> void` | IgniteClusterManager.`getAsyncMap​(String name, Promise<AsyncMap<K,​V>> promise)` |
    `void` | IgniteClusterManager.`getCounter​(String name, Promise<Counter> promise)` |
    `void` | IgniteClusterManager.`getLockWithTimeout​(String name, long timeout, Promise<Lock> promise)` |
    `void` | IgniteClusterManager.`getNodeInfo​(String id, Promise<NodeInfo> promise)` |
    `void` | IgniteClusterManager.`getRegistrations​(String address, Promise<List<RegistrationInfo>> promise)` |
    `void` | IgniteClusterManager.`join​(Promise<Void> promise)` |
    `void` | IgniteClusterManager.`leave​(Promise<Void> promise)` |
    `void` | IgniteClusterManager.`removeRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `void` | IgniteClusterManager.`setNodeInfo​(NodeInfo nodeInfo, Promise<Void> promise)` |

  - ### Uses of Promise in io.vertx.spi.cluster.zookeeper

    Methods in io.vertx.spi.cluster.zookeeper with parameters of type Promise
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ZookeeperClusterManager.`addRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `<K,​V> void` | ZookeeperClusterManager.`getAsyncMap​(String name, Promise<AsyncMap<K,​V>> promise)` |
    `void` | ZookeeperClusterManager.`getCounter​(String name, Promise<Counter> promise)` |
    `void` | ZookeeperClusterManager.`getLockWithTimeout​(String name, long timeout, Promise<Lock> promise)` |
    `void` | ZookeeperClusterManager.`getNodeInfo​(String nodeId, Promise<NodeInfo> promise)` |
    `void` | ZookeeperClusterManager.`getRegistrations​(String address, Promise<List<RegistrationInfo>> promise)` |
    `void` | ZookeeperClusterManager.`join​(Promise<Void> promise)` |
    `void` | ZookeeperClusterManager.`leave​(Promise<Void> promise)` |
    `void` | ZookeeperClusterManager.`removeRegistration​(String address, RegistrationInfo registrationInfo, Promise<Void> promise)` |
    `void` | ZookeeperClusterManager.`setNodeInfo​(NodeInfo nodeInfo, Promise<Void> promise)` |