Как использовать функцию - PullRequest
3 голосов
/ 11 февраля 2020

Я пытаюсь подключиться к серверу через прокси, но объект, который я создаю, вынуждает меня создать Function <? super string, ? extends String>, но я не знаю, как его использовать. Как это Function работает? Он просит у меня пароль

Мой код:

Function<? super String, ? extends String> pwd = username -> passProxy;
HttpClient httpClientAux = HttpClient.create().tcpConfiguration(tcpClient -> tcpClient.proxy(
                proxy -> proxy.type(ProxyProvider.Proxy.HTTP).address(new InetSocketAddress(urlProxy, 8080)).username(usuarioProxy).password(pwd)));
ReactorClientHttpConnector connector = new ReactorClientHttpConnector(httpClientAux);
this.myWebClient = webClientBuilder.clientConnector(connector).build();

1 Ответ

3 голосов
/ 11 февраля 2020

Function Представляет функцию, которая принимает один аргумент и выдает результат.

Функция имеет в основном два аргумента типа: первый - тип аргумента INPUT, а второй - тип возврата OUTPUT

Function<? super String, ? extends Integer> checkvalue = (str) -> str.length(); 
// takes String as parameter and produce length as Integer

В вашем случае Function <? super string? extends String> взять строку имени пользователя в качестве параметра и создать строку пароля

Начиная с do c https://projectreactor.io/docs/netty/release/api/reactor/netty/tcp/ProxyProvider.Builder.html#password - java .util.function.Function-

Подробнее о Function https://www.baeldung.com/java-8-functional-interfaces

...