import java.util.List;
import org.opendaylight.mdsal.binding.generator.impl.rt.DefaultRpcRuntimeType;
import org.opendaylight.mdsal.binding.model.api.GeneratedType;
-import org.opendaylight.mdsal.binding.model.api.ParameterizedType;
+import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedTypeBuilder;
import org.opendaylight.mdsal.binding.model.ri.BindingTypes;
+import org.opendaylight.mdsal.binding.model.ri.Types;
import org.opendaylight.mdsal.binding.runtime.api.RpcRuntimeType;
import org.opendaylight.mdsal.binding.runtime.api.RuntimeType;
+import org.opendaylight.yangtools.yang.binding.contract.Naming;
import org.opendaylight.yangtools.yang.binding.contract.StatementNamespace;
import org.opendaylight.yangtools.yang.model.api.stmt.RpcEffectiveStatement;
}
@Override
- ParameterizedType implementedType(final TypeBuilderFactory builderFactory, final GeneratedType input,
- final GeneratedType output) {
- return BindingTypes.rpc(input, output);
+ void addImplementedType(final TypeBuilderFactory builderFactory, final GeneratedTypeBuilder builder,
+ final GeneratedType input, final GeneratedType output) {
+ builder.addImplementsType(BindingTypes.rpc(input, output));
+ builder.addMethod(Naming.RPC_INVOKE_NAME).setAbstract(true)
+ .addParameter(input, "input")
+ .setReturnType(Types.listenableFutureTypeFor(BindingTypes.rpcResult(output)))
+ .addAnnotation(OVERRIDE_ANNOTATION);
}
@Override