import java.io.Serial;
import java.util.Collection;
import java.util.List;
+import java.util.function.Consumer;
import javax.xml.parsers.ParserConfigurationException;
import org.custommonkey.xmlunit.DetailedDiff;
import org.custommonkey.xmlunit.Diff;
import org.opendaylight.mdsal.dom.api.DOMRpcResult;
import org.opendaylight.mdsal.dom.api.DOMRpcService;
import org.opendaylight.mdsal.dom.api.DOMSchemaService;
+import org.opendaylight.mdsal.dom.api.DOMSchemaService.YangTextSourceExtension;
import org.opendaylight.mdsal.dom.spi.DefaultDOMRpcResult;
import org.opendaylight.netconf.api.DocumentedException;
import org.opendaylight.netconf.api.xml.XmlUtil;
import org.opendaylight.netconf.server.mdsal.CurrentSchemaContext;
import org.opendaylight.netconf.test.util.XmlFileLoader;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.netconf.base._1._0.rev110601.SessionIdType;
-import org.opendaylight.yangtools.concepts.ListenerRegistration;
-import org.opendaylight.yangtools.concepts.NoOpListenerRegistration;
+import org.opendaylight.yangtools.concepts.Registration;
import org.opendaylight.yangtools.yang.common.ErrorSeverity;
import org.opendaylight.yangtools.yang.common.ErrorTag;
import org.opendaylight.yangtools.yang.common.ErrorType;
import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
-import org.opendaylight.yangtools.yang.model.api.EffectiveModelContextListener;
import org.opendaylight.yangtools.yang.model.api.Module;
import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
-import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
-import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource;
-import org.opendaylight.yangtools.yang.model.repo.spi.SchemaSourceProvider;
+import org.opendaylight.yangtools.yang.model.api.source.SourceIdentifier;
+import org.opendaylight.yangtools.yang.model.spi.source.DelegatedYangTextSource;
import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
}
@Override
- public <T extends DOMRpcAvailabilityListener> ListenerRegistration<T> registerRpcListener(final T listener) {
- return NoOpListenerRegistration.of(listener);
+ public Registration registerRpcListener(final DOMRpcAvailabilityListener listener) {
+ return () -> { };
}
};
}
@Override
- public <T extends DOMRpcAvailabilityListener> ListenerRegistration<T> registerRpcListener(final T listener) {
- return NoOpListenerRegistration.of(listener);
+ public Registration registerRpcListener(final DOMRpcAvailabilityListener listener) {
+ return () -> { };
}
};
}
@Override
- public <T extends DOMRpcAvailabilityListener> ListenerRegistration<T> registerRpcListener(final T lsnr) {
- return NoOpListenerRegistration.of(lsnr);
+ public Registration registerRpcListener(final DOMRpcAvailabilityListener lsnr) {
+ return () -> { };
}
};
@Mock
private DOMSchemaService schemaService;
@Mock
- private EffectiveModelContextListener listener;
+ private Consumer<EffectiveModelContext> listener;
@Mock
- private ListenerRegistration<?> registration;
+ private Registration registration;
@Mock
- private SchemaSourceProvider<YangTextSchemaSource> sourceProvider;
+ private YangTextSourceExtension sourceProvider;
@BeforeClass
public static void beforeClass() {
public void setUp() throws Exception {
doNothing().when(registration).close();
doAnswer(invocationOnMock -> {
- ((EffectiveModelContextListener) invocationOnMock.getArguments()[0]).onModelContextUpdated(SCHEMA_CONTEXT);
+ ((Consumer<EffectiveModelContext>) invocationOnMock.getArgument(0)).accept(SCHEMA_CONTEXT);
return registration;
- }).when(schemaService).registerSchemaContextListener(any(EffectiveModelContextListener.class));
+ }).when(schemaService).registerSchemaContextListener(any());
XMLUnit.setIgnoreWhitespace(true);
XMLUnit.setIgnoreAttributeOrder(true);
- doAnswer(invocationOnMock -> Futures.immediateFuture(YangTextSchemaSource.delegateForCharSource(
- (SourceIdentifier) invocationOnMock.getArguments()[0], CharSource.wrap("module test"))))
- .when(sourceProvider).getSource(any(SourceIdentifier.class));
+ doAnswer(invocationOnMock -> Futures.immediateFuture(new DelegatedYangTextSource(
+ invocationOnMock.getArgument(0, SourceIdentifier.class), CharSource.wrap("module test"))))
+ .when(sourceProvider).getYangTexttSource(any(SourceIdentifier.class));
currentSchemaContext = CurrentSchemaContext.create(schemaService, sourceProvider);
}