refactering Request and Dispatcher