TenantHandler doesn't respect the order aware sub handler
See: https://github.com/eclipse-vertx/vert.x/issues/4536

A possible use case is to implement SSO on the same endpoint, for this the IdP info is extracted from a param, however, OAuth2Handler implements `OrderListener` and depends on this information to properly mount the callback.

On a Multi tenant environment, the order should be set to the handlers to avoid them being missed on the route.
diff --git a/vertx-web/src/main/java/io/vertx/ext/web/handler/impl/MultiTenantHandlerImpl.java b/vertx-web/src/main/java/io/vertx/ext/web/handler/impl/MultiTenantHandlerImpl.java
index ccf8e8f22..d8d75c14a 100644
--- a/vertx-web/src/main/java/io/vertx/ext/web/handler/impl/MultiTenantHandlerImpl.java
+++ b/vertx-web/src/main/java/io/vertx/ext/web/handler/impl/MultiTenantHandlerImpl.java
@@ -18,6 +18,7 @@ package io.vertx.ext.web.handler.impl;
 import io.vertx.core.Handler;
 import io.vertx.ext.web.RoutingContext;
 import io.vertx.ext.web.handler.MultiTenantHandler;
+import io.vertx.ext.web.impl.OrderListener;
 
 import java.util.Map;
 import java.util.Objects;
@@ -27,7 +28,7 @@ import java.util.function.Function;
 /**
  * @author <a href="http://pmlopes@gmail.com">Paulo Lopes</a>
  */
-public class MultiTenantHandlerImpl implements MultiTenantHandler {
+public class MultiTenantHandlerImpl implements MultiTenantHandler, OrderListener {
 
   private final Map<String, Handler<RoutingContext>> handlerMap = new ConcurrentHashMap<>();
 
@@ -87,4 +88,13 @@ public class MultiTenantHandlerImpl implements MultiTenantHandler {
       ctx.next();
     }
   }
+
+  @Override
+  public void onOrder(int order) {
+    for (Handler<RoutingContext> handler : handlerMap.values()) {
+      if (handler instanceof OrderListener) {
+        ((OrderListener) handler).onOrder(order);
+      }
+    }
+  }
 }
['vertx-web/src/main/java/io/vertx/ext/web/handler/impl/MultiTenantHandlerImpl.java']