com.r3corda.node.services.api / SchemaService

# SchemaService

`interface SchemaService`

A configuration and customisation point for Object Relational Mapping of contract state objects.

### Types

SchemaOptions | `data class SchemaOptions` Represents any options configured on the node for a schema.

### Properties

schemaOptions | `abstract val schemaOptions: Map<MappedSchema, SchemaOptions>` Options configured for this nodes schemas. A missing entry for a schema implies all properties are null.

### Functions

generateMappedObject | `abstract fun generateMappedObject(state: QueryableState, schema: MappedSchema): PersistentState` Map a state to a PersistentState for the given schema, either via direct support from the state or via custom logic in this service.
selectSchemas | `abstract fun selectSchemas(state: QueryableState): Iterable<MappedSchema>` Given a state, select schemas to map it to that are supported by generateMappedObject and that are configured for this node.

### Inheritors

NodeSchemaService | `class NodeSchemaService : SchemaService, SingletonSerializeAsToken` Most basic implementation of SchemaService.