I'm not sure what problem you're facing. The Matcher#doTransaction method should never receive a mutableData arguments as null , since it's annotated NonNull . Remember, the doTransaction method works at the parent node of all challenges, e.g. the list of all challenges. It shouldn't be null, but it doesn't have to contain any children.