import org.opendaylight.yangtools.yang.binding.Rpc;
import org.opendaylight.yangtools.yang.binding.RpcInput;
import org.opendaylight.yangtools.yang.binding.RpcOutput;
+import org.opendaylight.yangtools.yang.binding.YangData;
import org.opendaylight.yangtools.yang.common.QName;
+import org.opendaylight.yangtools.yang.common.YangDataName;
import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute;
/**
.asSubclass(RpcOutput.class);
}
+ @Override
+ @SuppressWarnings("unchecked")
+ public final Class<? extends YangData<?>> getYangDataClass(final YangDataName templateName) {
+ return (Class) loadClass(getTypes().findYangData(templateName)
+ .orElseThrow(() -> new IllegalArgumentException("Failed to find YangData for " + templateName)))
+ .asSubclass(YangData.class);
+ }
+
private Class<?> loadClass(final RuntimeType type) {
try {
return loadClass(type.javaType());
import org.opendaylight.yangtools.yang.binding.Rpc;
import org.opendaylight.yangtools.yang.binding.RpcInput;
import org.opendaylight.yangtools.yang.binding.RpcOutput;
+import org.opendaylight.yangtools.yang.binding.YangData;
import org.opendaylight.yangtools.yang.common.QName;
+import org.opendaylight.yangtools.yang.common.YangDataName;
import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
@NonNull Class<?> getClassForSchema(Absolute schema);
@NonNull Class<? extends BaseIdentity> getIdentityClass(QName input);
+
+ @NonNull Class<? extends YangData<?>> getYangDataClass(YangDataName templateName);
}
import org.opendaylight.yangtools.yang.binding.Rpc;
import org.opendaylight.yangtools.yang.binding.RpcInput;
import org.opendaylight.yangtools.yang.binding.RpcOutput;
+import org.opendaylight.yangtools.yang.binding.YangData;
import org.opendaylight.yangtools.yang.common.QName;
+import org.opendaylight.yangtools.yang.common.YangDataName;
import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute;
@Beta
public Class<? extends RpcOutput> getRpcOutput(final QName rpcName) {
return delegate().getRpcOutput(rpcName);
}
+
+ @Override
+ public Class<? extends YangData<?>> getYangDataClass(final YangDataName templateName) {
+ return delegate().getYangDataClass(templateName);
+ }
}