package org.opendaylight.mdsal.binding.dom.adapter;
import static com.google.common.base.Preconditions.checkArgument;
+import static java.util.Objects.requireNonNull;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.ClassToInstanceMap;
import org.opendaylight.yangtools.yang.binding.RpcService;
@VisibleForTesting
-public class BindingDOMRpcServiceAdapter
+public final class BindingDOMRpcServiceAdapter
extends AbstractBindingLoadingAdapter<DOMRpcService, Class<? extends RpcService>, RpcServiceAdapter>
implements RpcConsumerRegistry {
static final Factory<RpcConsumerRegistry> BUILDER_FACTORY = Builder::new;
super(adapterContext, domService);
}
- @SuppressWarnings("unchecked")
@Override
public <T extends RpcService> T getRpcService(final Class<T> rpcService) {
- checkArgument(rpcService != null, "Rpc Service needs to be specied.");
- return (T) getAdapter(rpcService).getProxy();
+ return rpcService.cast(getAdapter(requireNonNull(rpcService)).getProxy());
}
@Override