# RemoteDescriptor

Artifact: [androidx.test.espresso:espresso-remote](https://developer.android.com/jetpack/androidx/releases/test-espresso) [View Source](https://cs.android.com/search?q=file:androidx/test/espresso/remote/RemoteDescriptor.java+class:androidx.test.espresso.remote.RemoteDescriptor)

*** ** * ** ***

<br />

```
public final class RemoteDescriptor
```

<br />

*** ** * ** ***

Descriptor object containing all the required information to serialize and deserialize a type to and from a proto. Needs to be registered with an `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptorRegistry`.

## Summary

| ### Nested types |
|---|
| `public final class https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor.Builder` Builder for `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor` |

| ### Public fields |
|---|---|
| `final https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/androidx/test/espresso/remote/FieldDescriptor>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#instanceFieldDescriptorList()` |
| `final https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#instanceType()` |
| `final https://protobuf.dev/reference/java/api-docs/com/google/protobuf/Parser.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#protoParser()` |
| `final https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#protoType()` |
| `final https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#remoteType()` |

| ### Public methods |
|---|---|
| `boolean` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object.html o)` |
| `https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/androidx/test/espresso/remote/FieldDescriptor>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getInstanceFieldDescriptorList()()` |
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getInstanceType()()` |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getInstanceTypeName()()` |
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getProtoBuilderClass()()` |
| `https://protobuf.dev/reference/java/api-docs/com/google/protobuf/Parser.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getProtoParser()()` |
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getProtoType()()` |
| `Class[]` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getRemoteConstrTypes()()` |
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#getRemoteType()()` |
| `int` | `https://developer.android.com/reference/androidx/test/espresso/remote/RemoteDescriptor#hashCode()()` |

## Public fields

### instanceFieldDescriptorList

```
public final List<FieldDescriptor> instanceFieldDescriptorList
```

### instanceType

```
public final Class<@NonNull ?> instanceType
```

### protoParser

```
public final Parser<@NonNull ?> protoParser
```

### protoType

```
public final Class<@NonNull ?> protoType
```

### remoteType

```
public final Class<@NonNull ?> remoteType
```

## Public methods

### equals

```
public boolean equals(Object o)
```

### getInstanceFieldDescriptorList

```
public List<FieldDescriptor> getInstanceFieldDescriptorList()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/androidx/test/espresso/remote/FieldDescriptor>` | list of field properties which identify target field, in declared order. |

### getInstanceType

```
public Class<@NonNull ?> getInstanceType()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | the instance type |

### getInstanceTypeName

```
public String getInstanceTypeName()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html` | the class name for instance type |

### getProtoBuilderClass

```
public Class<@NonNull ?> getProtoBuilderClass()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | the proto message builder class for proto message type |

### getProtoParser

```
public Parser<@NonNull ?> getProtoParser()
```

| Returns |
|---|---|
| `https://protobuf.dev/reference/java/api-docs/com/google/protobuf/Parser.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | the proto parser to parse the proto message type |

### getProtoType

```
public Class<@NonNull ?> getProtoType()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | the proto message type |

### getRemoteConstrTypes

```
public Class[] getRemoteConstrTypes()
```

| Returns |
|---|---|
| `Class[]` | list of types which identify the constructor's formal parameter types, in declared order. |

### getRemoteType

```
public Class<@NonNull ?> getRemoteType()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/Class.html<@https://developer.android.com/reference/androidx/annotation/NonNull ?>` | the remote message type |

### hashCode

```
public int hashCode()
```