As I mentioned, the entity access handler invokes access hooks that modules that don't own the entity type can implement in order to have their say in the access to an entity. There are two sets of access hooks to speak of. The first set covers create operations, as follows:
The second set covers view, update, and delete operations:
For each set, we have two hooks invoked at the same time that go from generic to entity type specific. For example, when trying to view a node, the second hook that is invoked is hook_node_access().
The entity access hook implementations, as you remember from our earlier discussion, ...