From: Robert Varga Date: Wed, 11 Jul 2018 18:47:21 +0000 (+0200) Subject: Do not rely on union char[] values X-Git-Tag: release/fluorine~27^2~1 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=461862e4d2d7a509e44be8bff59720ef259ef546;p=netconf.git Do not rely on union char[] values This removes the dependency on synthetic getValue() and the union constructor for JMX. Change-Id: I46eaa2922e8cc83505a3198a9b29561f8ab1b32a Signed-off-by: Robert Varga --- diff --git a/netconf/mdsal-netconf-notification/src/test/java/org/opendaylight/controller/config/yang/netconf/mdsal/notification/SessionNotificationProducerTest.java b/netconf/mdsal-netconf-notification/src/test/java/org/opendaylight/controller/config/yang/netconf/mdsal/notification/SessionNotificationProducerTest.java index aa83c680ff..5a647b4a6f 100644 --- a/netconf/mdsal-netconf-notification/src/test/java/org/opendaylight/controller/config/yang/netconf/mdsal/notification/SessionNotificationProducerTest.java +++ b/netconf/mdsal-netconf-notification/src/test/java/org/opendaylight/controller/config/yang/netconf/mdsal/notification/SessionNotificationProducerTest.java @@ -23,12 +23,13 @@ import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.binding.api.DataObjectModification; +import org.opendaylight.controller.md.sal.binding.api.DataObjectModification.ModificationType; import org.opendaylight.controller.md.sal.binding.api.DataTreeChangeListener; import org.opendaylight.controller.md.sal.binding.api.DataTreeIdentifier; import org.opendaylight.controller.md.sal.binding.api.DataTreeModification; import org.opendaylight.netconf.notifications.BaseNotificationPublisherRegistration; import org.opendaylight.netconf.notifications.NetconfNotificationCollector; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Host; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.HostBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.Session; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.SessionBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.notifications.rev120206.NetconfCapabilityChange; @@ -74,8 +75,7 @@ public class SessionNotificationProducerTest { @Test public void testOnDataChangedSessionCreated() throws Exception { final Session session = createSession(1); - final DataTreeModification treeChange = getTreeModification(session, DataObjectModification - .ModificationType.WRITE); + final DataTreeModification treeChange = getTreeModification(session, ModificationType.WRITE); publisher.onDataTreeChanged(Collections.singleton(treeChange)); ArgumentCaptor captor = ArgumentCaptor.forClass(NetconfSessionStart.class); verify(registration).onSessionStarted(captor.capture()); @@ -93,7 +93,7 @@ public class SessionNotificationProducerTest { final Session sessionAfter = createSessionWithInRpcCount(1, 1); doReturn(sessionBefore).when(changeObject).getDataBefore(); doReturn(sessionAfter).when(changeObject).getDataAfter(); - doReturn(DataObjectModification.ModificationType.WRITE).when(changeObject).getModificationType(); + doReturn(ModificationType.WRITE).when(changeObject).getModificationType(); doReturn(changeObject).when(treeChange).getRootNode(); publisher.onDataTreeChanged(Collections.singleton(treeChange)); //session didn't start, only stats changed. No notification should be produced @@ -104,8 +104,7 @@ public class SessionNotificationProducerTest { @Test public void testOnDataChangedSessionDeleted() throws Exception { final Session session = createSession(1); - final DataTreeModification data = getTreeModification(session, DataObjectModification - .ModificationType.DELETE); + final DataTreeModification data = getTreeModification(session, ModificationType.DELETE); publisher.onDataTreeChanged(Collections.singleton(data)); ArgumentCaptor captor = ArgumentCaptor.forClass(NetconfSessionEnd.class); verify(registration).onSessionEnded(captor.capture()); @@ -115,22 +114,21 @@ public class SessionNotificationProducerTest { Assert.assertEquals(session.getUsername(), value.getUsername()); } - private Session createSession(long id) { + private static Session createSession(long id) { return createSessionWithInRpcCount(id, 0); } - private Session createSessionWithInRpcCount(long id, long inRpc) { + private static Session createSessionWithInRpcCount(long id, long inRpc) { return new SessionBuilder() .setSessionId(id) - .setSourceHost(new Host("0.0.0.0".toCharArray())) + .setSourceHost(HostBuilder.getDefaultInstance("0.0.0.0")) .setUsername("user") .setInRpcs(new ZeroBasedCounter32(inRpc)) .build(); } @SuppressWarnings("unchecked") - private DataTreeModification getTreeModification(Session session, DataObjectModification - .ModificationType type) { + private static DataTreeModification getTreeModification(Session session, ModificationType type) { final DataTreeModification treeChange = mock(DataTreeModification.class); final DataObjectModification changeObject = mock(DataObjectModification.class); switch (type) { diff --git a/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/NetconfServerSessionTest.java b/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/NetconfServerSessionTest.java index 6e44086436..6e3dc9e153 100644 --- a/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/NetconfServerSessionTest.java +++ b/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/NetconfServerSessionTest.java @@ -138,7 +138,7 @@ public class NetconfServerSessionTest { final NetconfServerSession tcpSession = new NetconfServerSession(listener, ch, 1L, header); tcpSession.sessionUp(); final Session managementSession = tcpSession.toManagementSession(); - Assert.assertEquals(new String(managementSession.getSourceHost().getValue()), HOST); + Assert.assertEquals(HOST, managementSession.getSourceHost().getIpAddress().getIpv4Address().getValue()); Assert.assertEquals(managementSession.getUsername(), USER); Assert.assertEquals(managementSession.getSessionId().toString(), SESSION_ID); Assert.assertEquals(managementSession.getTransport(), NetconfTcp.class); @@ -152,6 +152,7 @@ public class NetconfServerSessionTest { final NetconfServerSession tcpSession = new NetconfServerSession(listener, ch, 1L, header); tcpSession.sessionUp(); tcpSession.toManagementSession(); + tcpSession.close(); } @Test @@ -162,7 +163,7 @@ public class NetconfServerSessionTest { final NetconfServerSession tcpSession = new NetconfServerSession(listener, ch, 1L, header); tcpSession.sessionUp(); final Session managementSession = tcpSession.toManagementSession(); - Assert.assertEquals(new String(managementSession.getSourceHost().getValue()), "::1"); + Assert.assertEquals("::1", managementSession.getSourceHost().getIpAddress().getIpv6Address().getValue()); Assert.assertEquals(managementSession.getUsername(), USER); Assert.assertEquals(managementSession.getSessionId().toString(), SESSION_ID); Assert.assertEquals(managementSession.getTransport(), NetconfSsh.class); diff --git a/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfCapabilityMonitoringServiceTest.java b/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfCapabilityMonitoringServiceTest.java index 54d3cb3b7c..73ef36ef15 100644 --- a/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfCapabilityMonitoringServiceTest.java +++ b/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfCapabilityMonitoringServiceTest.java @@ -33,7 +33,7 @@ import org.opendaylight.netconf.api.monitoring.NetconfManagementSession; import org.opendaylight.netconf.api.monitoring.NetconfMonitoringService; import org.opendaylight.netconf.mapping.api.NetconfOperationServiceFactory; import org.opendaylight.netconf.notifications.BaseNotificationPublisherRegistration; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Host; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.HostBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.Capabilities; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.CapabilitiesBuilder; @@ -60,7 +60,7 @@ public class NetconfCapabilityMonitoringServiceTest { private YangModuleCapability moduleCapability2; private static final Session SESSION = new SessionBuilder() .setSessionId(1L) - .setSourceHost(new Host("0.0.0.0".toCharArray())) + .setSourceHost(HostBuilder.getDefaultInstance("0.0.0.0")) .setUsername("admin") .build(); private int capabilitiesSize; diff --git a/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfSessionMonitoringServiceTest.java b/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfSessionMonitoringServiceTest.java index 860aa36e8b..ae8ee0e628 100644 --- a/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfSessionMonitoringServiceTest.java +++ b/netconf/netconf-impl/src/test/java/org/opendaylight/netconf/impl/osgi/NetconfSessionMonitoringServiceTest.java @@ -32,7 +32,7 @@ import org.opendaylight.netconf.api.monitoring.NetconfManagementSession; import org.opendaylight.netconf.api.monitoring.NetconfMonitoringService; import org.opendaylight.netconf.api.monitoring.SessionEvent; import org.opendaylight.netconf.notifications.BaseNotificationPublisherRegistration; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Host; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.HostBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.Session; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.SessionBuilder; @@ -40,12 +40,12 @@ public class NetconfSessionMonitoringServiceTest { private static final Session SESSION_1 = new SessionBuilder() .setSessionId(1L) - .setSourceHost(new Host("0.0.0.0".toCharArray())) + .setSourceHost(HostBuilder.getDefaultInstance("0.0.0.0")) .setUsername("admin") .build(); private static final Session SESSION_2 = new SessionBuilder() .setSessionId(2L) - .setSourceHost(new Host("0.0.0.0".toCharArray())) + .setSourceHost(HostBuilder.getDefaultInstance("0.0.0.0")) .setUsername("admin") .build();