Class DefaultRPCSenderBuilder
java.lang.Object
eu.cloudnetservice.driver.impl.network.rpc.sender.DefaultRPCSenderBuilder
- All Implemented Interfaces:
eu.cloudnetservice.driver.network.rpc.RPCProvider.Builder<eu.cloudnetservice.driver.network.rpc.RPCSender.Builder>, eu.cloudnetservice.driver.network.rpc.RPCSender.Builder
public final class DefaultRPCSenderBuilder
extends Object
implements eu.cloudnetservice.driver.network.rpc.RPCSender.Builder
The default implementation of an RPC sender builder.
- Since:
- 4.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Supplier<eu.cloudnetservice.driver.network.NetworkChannel> private final RPCClassMetadataprivate eu.cloudnetservice.driver.network.buffer.DataBufFactoryprivate eu.cloudnetservice.driver.network.object.ObjectMapperprivate final eu.cloudnetservice.driver.network.rpc.factory.RPCFactory -
Constructor Summary
ConstructorsConstructorDescriptionDefaultRPCSenderBuilder(@NonNull eu.cloudnetservice.driver.network.rpc.factory.RPCFactory sourceFactory, @NonNull RPCClassMetadata classMetadata, @NonNull eu.cloudnetservice.driver.network.buffer.DataBufFactory dataBufFactory, @NonNull eu.cloudnetservice.driver.network.object.ObjectMapper objectMapper) Constructs a new builder instance for the target class (given by the class metadata) and the default data buf factory / object mapper from the source RPC factory. -
Method Summary
Modifier and TypeMethodDescription@NonNull eu.cloudnetservice.driver.network.rpc.RPCSenderbuild()eu.cloudnetservice.driver.network.rpc.RPCSender.BuilderdataBufFactory(@NonNull eu.cloudnetservice.driver.network.buffer.DataBufFactory dataBufFactory) eu.cloudnetservice.driver.network.rpc.RPCSender.BuilderexcludeMethod(@NonNull String name, @NonNull TypeDescriptor methodDescriptor) eu.cloudnetservice.driver.network.rpc.RPCSender.BuilderobjectMapper(@NonNull eu.cloudnetservice.driver.network.object.ObjectMapper objectMapper) eu.cloudnetservice.driver.network.rpc.RPCSender.BuildertargetChannel(@NonNull eu.cloudnetservice.driver.network.NetworkChannel channel) eu.cloudnetservice.driver.network.rpc.RPCSender.BuildertargetChannel(@NonNull Supplier<eu.cloudnetservice.driver.network.NetworkChannel> channelSupplier) eu.cloudnetservice.driver.network.rpc.RPCSender.BuildertargetComponent(@NonNull eu.cloudnetservice.driver.network.NetworkComponent networkComponent)
-
Field Details
-
sourceFactory
private final eu.cloudnetservice.driver.network.rpc.factory.RPCFactory sourceFactory -
classMetadata
-
objectMapper
private eu.cloudnetservice.driver.network.object.ObjectMapper objectMapper -
dataBufFactory
private eu.cloudnetservice.driver.network.buffer.DataBufFactory dataBufFactory -
channelSupplier
-
-
Constructor Details
-
DefaultRPCSenderBuilder
public DefaultRPCSenderBuilder(@NonNull @NonNull eu.cloudnetservice.driver.network.rpc.factory.RPCFactory sourceFactory, @NonNull @NonNull RPCClassMetadata classMetadata, @NonNull @NonNull eu.cloudnetservice.driver.network.buffer.DataBufFactory dataBufFactory, @NonNull @NonNull eu.cloudnetservice.driver.network.object.ObjectMapper objectMapper) Constructs a new builder instance for the target class (given by the class metadata) and the default data buf factory / object mapper from the source RPC factory.- Parameters:
sourceFactory- the rpc factory that constructed this object.classMetadata- the metadata for the target class.dataBufFactory- the default data buf factory of the source RPC factory.objectMapper- the default object mapper of the source RPC factory.- Throws:
NullPointerException- if the given class meta, data buf factory or object mapper is null.
-
-
Method Details
-
targetComponent
-
targetChannel
-
targetChannel
-
excludeMethod
-
objectMapper
@NonNull public eu.cloudnetservice.driver.network.rpc.RPCSender.Builder objectMapper(@NonNull @NonNull eu.cloudnetservice.driver.network.object.ObjectMapper objectMapper) - Specified by:
objectMapperin interfaceeu.cloudnetservice.driver.network.rpc.RPCProvider.Builder<eu.cloudnetservice.driver.network.rpc.RPCSender.Builder>
-
dataBufFactory
@NonNull public eu.cloudnetservice.driver.network.rpc.RPCSender.Builder dataBufFactory(@NonNull @NonNull eu.cloudnetservice.driver.network.buffer.DataBufFactory dataBufFactory) - Specified by:
dataBufFactoryin interfaceeu.cloudnetservice.driver.network.rpc.RPCProvider.Builder<eu.cloudnetservice.driver.network.rpc.RPCSender.Builder>
-
build
-