Package io.vertx.rxjava3.core

## Class AbstractVerticle

- java.lang.Object
- - io.vertx.core.AbstractVerticle
  - - io.vertx.rxjava3.core.AbstractVerticle

- All Implemented Interfaces:
    `Deployable`, `Verticle`

      public abstract class AbstractVerticle
      extends AbstractVerticle

  Author:
    Julien Viet

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Vertx` | `vertx` |

    - ### Fields inherited from class io.vertx.core.AbstractVerticle

      `context`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AbstractVerticle()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `init​(Vertx vertx, Context context)` | Initialise the verticle.
    `Completable` | `rxStart()` | Override to return a `Completable` that will complete the deployment of this verticle.
    `Completable` | `rxStop()` | Override to return a `Completable` that will complete the undeployment of this verticle.
    `void` | `start​(Promise<Void> startFuture)` | Start the verticle.
    `void` | `stop​(Promise<Void> stopFuture)` | Stop the verticle.

    - ### Methods inherited from class io.vertx.core.AbstractVerticle

      `config, deploy, deploymentID, getVertx, processArgs, start, stop, undeploy`

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

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

- - ### Field Detail

    - #### vertx

          protected Vertx vertx

  - ### Constructor Detail

    - #### AbstractVerticle

          public AbstractVerticle()

  - ### Method Detail

    - #### init

          public void init​(Vertx vertx,
                           Context context)

      Description copied from class: `AbstractVerticle`
      Initialise the verticle.

      This is called by Vert.x when the verticle instance is deployed. Don't call it yourself.

      Specified by:
        `init` in interface `Verticle`
      Overrides:
        `init` in class `AbstractVerticle`
      Parameters:
        `vertx` - the deploying Vert.x instance
        `context` - the context of the verticle

    - #### start

          public void start​(Promise<Void> startFuture)
                     throws Exception

      Description copied from class: `AbstractVerticle`
      Start the verticle.

      This is called by Vert.x when the verticle instance is deployed. Don't call it yourself.

      If your verticle does things in its startup which take some time then you can override this method and call the startFuture some time later when start up is complete.

      Specified by:
        `start` in interface `Verticle`
      Overrides:
        `start` in class `AbstractVerticle`
      Parameters:
        `startFuture` - a promise which should be called when verticle start-up is complete.
      Throws:
        `Exception`

    - #### rxStart

          public Completable rxStart()

      Override to return a `Completable` that will complete the deployment of this verticle.

      When `null` is returned, the `AbstractVerticle.start()` will be called instead.
      Returns:
        the completable

    - #### stop

          public void stop​(Promise<Void> stopFuture)
                    throws Exception

      Description copied from class: `AbstractVerticle`
      Stop the verticle.

      This is called by Vert.x when the verticle instance is un-deployed. Don't call it yourself.

      If your verticle does things in its shut-down which take some time then you can override this method and call the stopFuture some time later when clean-up is complete.

      Specified by:
        `stop` in interface `Verticle`
      Overrides:
        `stop` in class `AbstractVerticle`
      Parameters:
        `stopFuture` - a promise which should be called when verticle clean-up is complete.
      Throws:
        `Exception`

    - #### rxStop

          public Completable rxStop()

      Override to return a `Completable` that will complete the undeployment of this verticle.

      When `null` is returned, the `AbstractVerticle.stop()` will be called instead.
      Returns:
        the completable