generating order factory for IoC