renaming producer method and throwing IAE if null