From 3b2478b8ceaf9692289f5be171294a8171ca73f9 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 27 Apr 2023 11:04:15 +0200 Subject: [PATCH] Clean up DummyMonitoringService Do not use Guava's Collections2 -- streams can do the same thing. Change-Id: I40d783c772c7f62e05458611083c4e6307fd608b Signed-off-by: Robert Varga --- .../test/tool/DummyMonitoringService.java | 51 +++++++++---------- 1 file changed, 23 insertions(+), 28 deletions(-) diff --git a/netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/DummyMonitoringService.java b/netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/DummyMonitoringService.java index f63dc732db..b4f91a93ad 100644 --- a/netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/DummyMonitoringService.java +++ b/netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/DummyMonitoringService.java @@ -9,15 +9,12 @@ package org.opendaylight.netconf.test.tool; import static com.google.common.base.Preconditions.checkState; -import com.google.common.base.Function; import com.google.common.collect.ArrayListMultimap; -import com.google.common.collect.Collections2; import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Maps; import java.util.HashSet; -import java.util.List; import java.util.Optional; import java.util.Set; +import java.util.stream.Collectors; import org.opendaylight.netconf.api.capability.Capability; import org.opendaylight.netconf.server.api.monitoring.NetconfManagementSession; import org.opendaylight.netconf.server.api.monitoring.NetconfMonitoringService; @@ -31,42 +28,31 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.mon import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.SchemasBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.Sessions; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.SessionsBuilder; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.schemas.Schema; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.schemas.Schema.Location; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.schemas.Schema.Location.Enumeration; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.schemas.SchemaBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.schemas.SchemaKey; import org.opendaylight.yangtools.concepts.NoOpObjectRegistration; import org.opendaylight.yangtools.concepts.Registration; +import org.opendaylight.yangtools.yang.binding.util.BindingMap; public class DummyMonitoringService implements NetconfMonitoringService { - private static final Sessions EMPTY_SESSIONS = new SessionsBuilder().build(); - private static final Function CAPABILITY_URI_FUNCTION = - capability -> new Uri(capability.getCapabilityUri()); - - private static final Function CAPABILITY_SCHEMA_FUNCTION = capability -> new SchemaBuilder() - .setIdentifier(capability.getModuleName().orElseThrow()) - .setNamespace(new Uri(capability.getModuleNamespace().orElseThrow())) - .setFormat(Yang.VALUE) - .setVersion(capability.getRevision().orElse("")) - .setLocation(Set.of(new Location(Enumeration.NETCONF))) - .withKey(new SchemaKey(Yang.VALUE, capability.getModuleName().orElseThrow(), - capability.getRevision().orElse(""))) - .build(); private final Capabilities capabilities; private final ArrayListMultimap capabilityMultiMap; private final Schemas schemas; public DummyMonitoringService(final Set capabilities) { + this.capabilities = new CapabilitiesBuilder() + .setCapability(capabilities.stream() + .map(capability -> new Uri(capability.getCapabilityUri())) + .collect(ImmutableSet.toImmutableSet())) + .build(); - this.capabilities = new CapabilitiesBuilder().setCapability( - ImmutableSet.copyOf(Collections2.transform(capabilities, CAPABILITY_URI_FUNCTION))).build(); - - Set moduleCapabilities = new HashSet<>(); + final var moduleCapabilities = new HashSet(); capabilityMultiMap = ArrayListMultimap.create(); - for (Capability cap : capabilities) { + for (var cap : capabilities) { cap.getModuleName().ifPresent(moduleName -> { capabilityMultiMap.put(moduleName, cap); moduleCapabilities.add(cap); @@ -74,9 +60,18 @@ public class DummyMonitoringService implements NetconfMonitoringService { } schemas = new SchemasBuilder() - .setSchema(Maps.uniqueIndex(Collections2.transform(moduleCapabilities, CAPABILITY_SCHEMA_FUNCTION), - Schema::key)) - .build(); + .setSchema(BindingMap.of(moduleCapabilities.stream() + .map(capability -> new SchemaBuilder() + .setIdentifier(capability.getModuleName().orElseThrow()) + .setNamespace(new Uri(capability.getModuleNamespace().orElseThrow())) + .setFormat(Yang.VALUE) + .setVersion(capability.getRevision().orElse("")) + .setLocation(Set.of(new Location(Enumeration.NETCONF))) + .withKey(new SchemaKey(Yang.VALUE, capability.getModuleName().orElseThrow(), + capability.getRevision().orElse(""))) + .build()) + .collect(Collectors.toList()))) + .build(); } @Override @@ -111,9 +106,9 @@ public class DummyMonitoringService implements NetconfMonitoringService { @Override public String getSchemaForCapability(final String moduleName, final Optional revision) { - final List capabilityList = capabilityMultiMap.get(moduleName); + final var capabilityList = capabilityMultiMap.get(moduleName); if (revision.isPresent()) { - for (Capability capability : capabilityList) { + for (var capability : capabilityList) { if (capability.getRevision().orElseThrow().equals(revision.orElseThrow())) { return capability.getCapabilitySchema().orElseThrow(); } -- 2.36.6