update the product handler with a base class