public static final class

RemoteDescriptor.Builder

extends Object
java.lang.Object
   ↳ androidx.test.espresso.remote.RemoteDescriptor.Builder

Class Overview

Builder for RemoteDescriptor

Summary

Public Constructors
RemoteDescriptor.Builder()
Public Methods
RemoteDescriptor build()
Builds a RemoteDescriptor from the builder properties set.
RemoteDescriptor.Builder setInstanceFieldDescriptors(FieldDescriptor... fieldDescriptors)
Sets the FieldDescriptors associated with this RemoteDescriptor.
RemoteDescriptor.Builder setInstanceType(Class<?> instanceType)
Sets the instance type for associated with this RemoteDescriptor.
RemoteDescriptor.Builder setProtoBuilderType(Class<?> protoBuilderType)
Sets the type of the proto message builder associated with this RemoteDescriptor.
RemoteDescriptor.Builder setProtoParser( protoParser)
Sets the type of the proto message parser associated with this RemoteDescriptor.
RemoteDescriptor.Builder setProtoType(Class<?> protoType)
Sets the type of the proto message associated with this RemoteDescriptor.
RemoteDescriptor.Builder setRemoteConstrTypes(Class...<?> remoteConstrTypes)
Sets the remote constructor types of the EspressoRemoteMessage associated with this RemoteDescriptor.
RemoteDescriptor.Builder setRemoteType(Class<?> remoteType)
Sets the type of the EspressoRemoteMessage associated with this RemoteDescriptor.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public RemoteDescriptor.Builder ()

Public Methods

public RemoteDescriptor build ()

Builds a RemoteDescriptor from the builder properties set.

Returns
RemoteDescriptor

public RemoteDescriptor.Builder setInstanceFieldDescriptors (FieldDescriptor... fieldDescriptors)

Sets the FieldDescriptors associated with this RemoteDescriptor.

The field descriptor order, must match the instanceTypes declared constructor parameter order.

Note: Any field descriptors passed to this method will be overwritten by field descriptors annotated with RemoteMsgField.

Returns
RemoteDescriptor.Builder fluent builder interface

public RemoteDescriptor.Builder setInstanceType (Class<?> instanceType)

Sets the instance type for associated with this RemoteDescriptor.

The instance type represents the class that will be converted to and from a proto.

Returns
RemoteDescriptor.Builder fluent builder interface

public RemoteDescriptor.Builder setProtoBuilderType (Class<?> protoBuilderType)

Sets the type of the proto message builder associated with this RemoteDescriptor.

By default the proto builder will be created by this class. Only call this method if a custom builder is required.

Parameters
protoBuilderType Class: the proto message builder class
Returns
RemoteDescriptor.Builder fluent builder interface

public RemoteDescriptor.Builder setProtoParser ( protoParser)

Sets the type of the proto message parser associated with this RemoteDescriptor.

By default the proto parser is inferred from the protoType. Only call this method if a custom parser is required.

Parameters
protoParser : the proto parser
Returns
RemoteDescriptor.Builder fluent builder interface

public RemoteDescriptor.Builder setProtoType (Class<?> protoType)

Sets the type of the proto message associated with this RemoteDescriptor.

Parameters
protoType Class: the proto message class
Returns
RemoteDescriptor.Builder fluent builder interface

public RemoteDescriptor.Builder setRemoteConstrTypes (Class...<?> remoteConstrTypes)

Sets the remote constructor types of the EspressoRemoteMessage associated with this RemoteDescriptor.

The types passed to this method will be used to reflectively infer the remote message constructor.

By default the instanceType is used as remote message constructor. Only set custom remote constructor types, when the remote message constructor takes a superclass or interface, implemented by the instance type. Don't call this method when using GenericRemoteMessage.

Returns
RemoteDescriptor.Builder fluent builder interface

public RemoteDescriptor.Builder setRemoteType (Class<?> remoteType)

Sets the type of the EspressoRemoteMessage associated with this RemoteDescriptor.

Parameters
remoteType Class: the remote message class
Returns
RemoteDescriptor.Builder fluent builder interface