Record Class RPCMethodMetadata

java.lang.Object
java.lang.Record
eu.cloudnetservice.driver.network.rpc.introspec.RPCMethodMetadata
Record Components:
concrete - if the method is concretely implemented, false if the method is abstract.
asyncReturnType - if the method has an async return type (returns a supported future subtype).
compilerGenerated - if the method was inserted into the class by the compiler.
executionResultIgnored - if the method was specifically annotated to not wait for the rpc execution.
name - the name of the method.
returnType - the full generic return type of the method.
unwrappedReturnType - the return type of the method after unwrapping, e.g. if the returning an async type.
parameterTypes - the fully generic parameter types.
methodType - the method type of the method.
definingClass - the class in which the method is defined.
executionTimeout - the execution timeout of the method, null if not defined.
chainMetadata - the metadata for chain implementation, if annotated with RPCChained.

public record RPCMethodMetadata(boolean concrete, boolean asyncReturnType, boolean compilerGenerated, boolean executionResultIgnored, @NonNull String name, @NonNull Type returnType, @NonNull Type unwrappedReturnType, @NonNull Type[] parameterTypes, @NonNull MethodType methodType, @NonNull Class<?> definingClass, @Nullable Duration executionTimeout, @Nullable RPCMethodMetadata.MethodChainMetadata chainMetadata) extends Record
Metadata information about a method that can be used with RPC.
Since:
4.0