Consistently use InvalidDataAccessApiUsageException to signal that an operation is not allowed/supported in the current mode of operation. Replace converter objects with conversion within the actual method to remove indirections. Original Pull Request: #2287