/** * Returns a new {@link LocalClientTransport} that is connected to this {@code * LocalServerTransport}. * * @return a new {@link LocalClientTransport} that is connected to this {@code * LocalServerTransport} */ public LocalClientTransport clientTransport() { return LocalClientTransport.create(name); }
/** * Creates a new instance. * * @param name the name of the {@link ServerTransport} instance to connect to * @return a new instance * @throws NullPointerException if {@code name} is {@code null} */ public static LocalClientTransport create(String name) { Objects.requireNonNull(name, "name must not be null"); return new LocalClientTransport(name); }
@DisplayName("connects to server") @Test void connect() { LocalServerTransport serverTransport = LocalServerTransport.createEphemeral(); serverTransport .start(duplexConnection -> Mono.empty()) .flatMap(closeable -> LocalClientTransport.create(serverTransport.getName()).connect()) .as(StepVerifier::create) .expectNextCount(1) .verifyComplete(); }
@Override public Optional<ClientTransport> buildClient(URI uri) { Objects.requireNonNull(uri, "uri must not be null"); if (!SCHEME.equals(uri.getScheme())) { return Optional.empty(); } return Optional.of(LocalClientTransport.create(uri.getSchemeSpecificPart())); }
/** * Creates a new instance. * * @param name the name of the {@link ServerTransport} instance to connect to * @return a new instance * @throws NullPointerException if {@code name} is {@code null} */ public static LocalClientTransport create(String name) { Objects.requireNonNull(name, "name must not be null"); return new LocalClientTransport(name); }
@DisplayName("creates client") @Test void create() { assertThat(LocalClientTransport.create("test-name")).isNotNull(); }
/** * Returns a new {@link LocalClientTransport} that is connected to this {@code * LocalServerTransport}. * * @return a new {@link LocalClientTransport} that is connected to this {@code * LocalServerTransport} */ public LocalClientTransport clientTransport() { return LocalClientTransport.create(name); }
@DisplayName("throws NullPointerException with null name") @Test void createNullName() { assertThatNullPointerException() .isThrownBy(() -> LocalClientTransport.create(null)) .withMessage("name must not be null"); } }
@Override public Optional<ClientTransport> buildClient(URI uri) { Objects.requireNonNull(uri, "uri must not be null"); if (!SCHEME.equals(uri.getScheme())) { return Optional.empty(); } return Optional.of(LocalClientTransport.create(uri.getSchemeSpecificPart())); }