builder.withProtocol(NetconfClientProtocol.SSH);
setSshParametersFromCredentials(builder, node.getCredentials());
} else if (protocol.getName() == Name.TLS) {
- builder.withProtocol(NetconfClientProtocol.TLS).withSslHandlerFactory(
- channel -> sslHandlerFactoryProvider.getSslHandlerFactory(protocol.getSpecification())
- .createSslHandler());
+ final var handlerFactory = sslHandlerFactoryProvider.getSslHandlerFactory(protocol.getSpecification());
+ builder.withProtocol(NetconfClientProtocol.TLS)
+ .withSslHandlerFactory(channel -> handlerFactory.createSslHandler());
} else {
throw new IllegalArgumentException("Unsupported protocol type: " + protocol.getName());
}
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertSame;
import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doReturn;
import java.util.NoSuchElementException;
import org.junit.jupiter.api.BeforeEach;
import org.mockito.junit.jupiter.MockitoExtension;
import org.opendaylight.aaa.encrypt.AAAEncryptionService;
import org.opendaylight.netconf.client.NetconfClientSessionListener;
+import org.opendaylight.netconf.client.SslHandlerFactory;
import org.opendaylight.netconf.client.conf.NetconfClientConfiguration;
import org.opendaylight.netconf.client.conf.NetconfClientConfiguration.NetconfClientProtocol;
import org.opendaylight.netconf.client.mdsal.api.CredentialProvider;
private CredentialProvider credentialProvider;
@Mock
private SslHandlerFactoryProvider sslHandlerFactoryProvider;
+ @Mock
+ private SslHandlerFactory sslHandlerFactory;
private NetconfNodeBuilder nodeBuilder;
private NetconfClientConfigurationBuilderFactoryImpl factory;
sslHandlerFactoryProvider);
}
- private void assertConfig(NetconfClientConfiguration config) {
+ private void assertConfig(final NetconfClientConfiguration config) {
assertNotNull(config);
assertNotNull(config.getTcpParameters());
assertEquals(HOST, config.getTcpParameters().getRemoteAddress());
@Test
void testTls() {
+ doReturn(sslHandlerFactory).when(sslHandlerFactoryProvider).getSslHandlerFactory(any());
final var config = createConfig(
nodeBuilder.setTcpOnly(false).setProtocol(new ProtocolBuilder().setName(Name.TLS).build()).build());
assertConfig(config);