using ApplicationContext interface