Reason the ShardRecordProcessor is being shutdown.
Used to distinguish between a fail-over vs. a termination (shard is closed and all records have been delivered).
In case of a fail over, applications should NOT checkpoint as part of shutdown,
since another record processor may have already started processing records for that shard.
In case of termination (resharding use case), applications SHOULD checkpoint their progress to indicate
that they have successfully processed all the records (processing of child shards can then begin).
Processing will be moved to a different record processor (fail over, load balancing use cases).
Applications SHOULD NOT checkpoint their progress (as another record processor may have already started
Terminate processing for this ShardRecordProcessor (resharding use case).
Indicates that the shard is closed and all records from the shard have been delivered to the application.
Applications SHOULD checkpoint their progress to indicate that they have successfully processed all records
from this shard and processing of child shards can be started.
Indicates that the entire application is being shutdown, and if desired the record processor will be given a
final chance to checkpoint. This state will not trigger a direct call to
instead depend on a different interface for backward compatibility.
Returns the enum constant of this type with the specified name.
The string must match exactly an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
name - the name of the enum constant to be returned.