This repository contains the following behaviors:
- InsertEntityRequestBehavior: used to insert the MediatR request into the specified table
- InsertEntityResponseBehavior: used to insert the MediatR response into the specified table
- DeleteEntityRequestBehavior: used to delete the MediatR request from the specified table
- DeleteEntityResponseBehavior: used to delete the MediatR response from the specified table
- RetrieveEntityRequestBehavior: used to retrieve the MediatR request from the specified table
- RetrieveEntityResponseBehavior: used to retrieve the MediatR response from the specified table
This repository contains the following processors:
- InsertEntityRequestProcessor: used to insert the MediatR request into the specified table
- InsertEntityResponseProcessor: used to insert the MediatR response into the specified table
- DeleteEntityRequestProcessor: used to delete the MediatR request from the specified table
- DeleteEntityResponseProcessor: used to delete the MediatR response from the specified table
- RetrieveEntityRequestProcessor: used to retrieve the MediatR request from the specified table
- RetrieveEntityResponseProcessor: used to retrieve the MediatR response from the specified table
Table extensions depend on table commands, which represent the actual extension implementation:
- InsertEntityCommand<TMessage>: used to insert an entity into the specified table
- DeleteEntityCommand<TMessage>: used to delete an entity from the specified table
- RetrieveEntityCommand<TMessage>: used to retrieve an entity from the specified table
Table extensions are controlled using TableOptions<TMessage>.
The same option can have different requirements within the scope of different commands. Options requirements are as follows:
- Required: the value is required and an exception will be thrown if one is not supplied
- Default: the value is required and a default will be provided if one is not supplied
- Optional: the value is optional and will be used if one is supplied, ignored otherwise
- Ignored: the value is not used by the command and supplying one will have no effect
Options and their requirements are described in the following table:
Option | Description | Insert | Delete | Retrieve |
---|---|---|---|---|
IsEnabled | true to enable execution of the extension, false to disable it |
Default 1 | Default 1 | Default 1 |
CloudTable | The table against which the operation is executed | Required | Required | Required |
TableEntity | The table entity that is the target of the operation | Default 2 | Required 3 | Required 3 |
Retrieved | The event that is raised after the entity is retrieved | Ignored | Ignored | Optional |