import io.netty.util.TimerTask;
import java.net.InetSocketAddress;
import java.util.List;
-import java.util.concurrent.Executor;
import java.util.concurrent.TimeUnit;
+import org.junit.After;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev231025.credentials.credentials.LoginPwUnencryptedBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev231025.credentials.credentials.login.pw.unencrypted.LoginPasswordUnencryptedBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev221225.NetconfNodeBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev240120.credentials.credentials.LoginPwUnencryptedBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev240120.credentials.credentials.login.pw.unencrypted.LoginPasswordUnencryptedBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev231121.NetconfNodeBuilder;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
import org.opendaylight.yangtools.yang.common.Decimal64;
import org.opendaylight.yangtools.yang.common.Uint16;
@Mock
private SchemaResourceManager schemaManager;
@Mock
- private Executor processingExecutor;
- @Mock
private DeviceActionFactory deviceActionFactory;
@Mock
private RemoteDeviceHandler delegate;
@Mock
private EffectiveModelContext schemaContext;
+ private NetconfTopologySchemaAssembler schemaAssembler;
private NetconfNodeHandler handler;
@BeforeClass
@Before
public void before() {
+ schemaAssembler = new NetconfTopologySchemaAssembler(1, 1, 0, TimeUnit.SECONDS);
+
// Instantiate the handler
- handler = new NetconfNodeHandler(clientFactory, timer, BASE_SCHEMAS, schemaManager, processingExecutor,
- new DefaultNetconfClientConfigurationBuilderFactory(encryptionService, credentialProvider,
+ handler = new NetconfNodeHandler(clientFactory, timer, BASE_SCHEMAS, schemaManager, schemaAssembler,
+ new NetconfClientConfigurationBuilderFactoryImpl(encryptionService, credentialProvider,
sslHandlerFactoryProvider),
deviceActionFactory, delegate, DEVICE_ID, NODE_ID, new NetconfNodeBuilder()
.setHost(new Host(new IpAddress(new Ipv4Address("127.0.0.1"))))
.setReconnectOnChangedSchema(true)
.setSchemaless(true)
.setTcpOnly(true)
- .setSleepFactor(Decimal64.valueOf("1.5"))
+ .setBackoffMultiplier(Decimal64.valueOf("1.5"))
.setConcurrentRpcLimit(Uint16.ONE)
// One reconnection attempt
.setMaxConnectionAttempts(Uint32.TWO)
.setDefaultRequestTimeoutMillis(Uint32.valueOf(1000))
- .setBetweenAttemptsTimeoutMillis(Uint16.valueOf(100))
+ .setMinBackoffMillis(Uint16.valueOf(100))
.setKeepaliveDelay(Uint32.valueOf(1000))
.setConnectionTimeoutMillis(Uint32.valueOf(1000))
+ .setMaxBackoffMillis(Uint32.valueOf(1000))
+ .setBackoffJitter(Decimal64.valueOf("0.0"))
.setCredentials(new LoginPwUnencryptedBuilder()
.setLoginPasswordUnencrypted(new LoginPasswordUnencryptedBuilder()
.setUsername("testuser")
.build(), null);
}
+ @After
+ public void after() {
+ schemaAssembler.close();
+ }
+
@Test
public void successfulOnDeviceConnectedPropagates() throws Exception {
assertSuccessfulConnect();