implemented property and method injection