public function getState(Identifier $identifier)
{
try {
// execute a hook that should be implemented in a subclass.
// the subclass could return STATE_UNKNOWN if it is not already
// added to the storage backend or it might throw an exception warning the
//end user that he should 'StateMachine::add' to the backend first
$state = $this->processGetState($identifier);
return $state;
} catch (\Exception $e) {
$e = Utils::wrapToStateMachineException($e, Exception::IO_FAILURE_GET);
throw $e;
}
}