public static void main(String[] args) throws Exception {
    ConfigRegistry configRegistry = ConfigBootstrap.configRegistry();

    Config config =
        configRegistry
            .objectProperty("io.scalecube.services.gateway", Config.class)
            .value()
            .orElseThrow(() -> new IllegalStateException("Couldn't load config"));

    LOGGER.info(DECORATOR);
    LOGGER.info("Starting Gateway on {}", config);
    LOGGER.info(DECORATOR);

    MetricRegistry metrics = initMetricRegistry();

    Microservices.builder()
        .discovery(serviceEndpoint -> serviceDiscovery(serviceEndpoint, config))
        .transport(opts -> serviceTransport(opts, config))
        .gateway(opts -> new WebsocketGateway(opts.id("ws").port(7070)))
        .gateway(opts -> new HttpGateway(opts.id("http").port(8080)))
        .gateway(opts -> new RSocketGateway(opts.id("rsws").port(9090)))
        .metrics(metrics)
        .startAwait();

    Thread.currentThread().join();
  }
public static void main ( String [ ] args ) throws Exception { ConfigRegistry configRegistry = ConfigBootstrap . configRegistry ( ) ; Config config = configRegistry . objectProperty ( "io.scalecube.services.gateway" , Config . class ) . value ( ) . orElseThrow ( ( ) -> new IllegalStateException ( "Couldn't load config" ) ) ; LOGGER . info ( DECORATOR ) ; LOGGER . info ( "Starting Gateway on {}" , config ) ; LOGGER . info ( DECORATOR ) ; MetricRegistry metrics = initMetricRegistry ( ) ; Microservices . builder ( ) . discovery ( serviceEndpoint -> serviceDiscovery ( serviceEndpoint , config ) ) . transport ( opts -> serviceTransport ( opts , config ) ) . gateway ( opts -> new WebsocketGateway ( opts . id ( "ws" ) . port ( 7070 ) ) ) . gateway ( opts -> new HttpGateway ( opts . id ( "http" ) . port ( 8080 ) ) ) . gateway ( opts -> new RSocketGateway ( opts . id ( "rsws" ) . port ( 9090 ) ) ) . metrics ( metrics ) . startAwait ( ) ; Thread . currentThread ( ) . join ( ) ; }
Main runner.

@param args program arguments
@throws Exception exception thrown