Bump upstream SNAPSHOTS
[controller.git] / opendaylight / blueprint / src / main / java / org / opendaylight / controller / blueprint / ext / RpcUtil.java
index dc65d9b918206aafd06627620767cba8a3435926..331aac7e30c702a98c3e9b5446b53438c9868841 100644 (file)
@@ -10,14 +10,14 @@ package org.opendaylight.controller.blueprint.ext;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.function.Predicate;
-import org.opendaylight.controller.md.sal.dom.broker.spi.rpc.RpcRoutingStrategy;
+import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
+import org.opendaylight.mdsal.dom.spi.RpcRoutingStrategy;
 import org.opendaylight.yangtools.yang.binding.RpcService;
-import org.opendaylight.yangtools.yang.binding.util.BindingReflections;
+import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -33,18 +33,19 @@ final class RpcUtil {
         throw new UnsupportedOperationException();
     }
 
-    static Collection<SchemaPath> decomposeRpcService(final Class<RpcService> service,
+    static Collection<QName> decomposeRpcService(final Class<RpcService> service,
             final SchemaContext schemaContext, final Predicate<RpcRoutingStrategy> filter) {
         final QNameModule moduleName = BindingReflections.getQNameModule(service);
-        final Module module = schemaContext.findModule(moduleName).get();
+        final Module module = schemaContext.findModule(moduleName).orElseThrow(() -> new IllegalArgumentException(
+                "Module not found in SchemaContext: " + moduleName + "; service: " + service));
         LOG.debug("Resolved service {} to module {}", service, module);
 
-        final Collection<RpcDefinition> rpcs = module.getRpcs();
-        final Collection<SchemaPath> ret = new ArrayList<>(rpcs.size());
+        final Collection<? extends RpcDefinition> rpcs = module.getRpcs();
+        final Collection<QName> ret = new ArrayList<>(rpcs.size());
         for (RpcDefinition rpc : rpcs) {
             final RpcRoutingStrategy strategy = RpcRoutingStrategy.from(rpc);
             if (filter.test(strategy)) {
-                ret.add(rpc.getPath());
+                ret.add(rpc.getQName());
             }
         }