implemented CoffeItemFactory and subsequent changes