added component interface, so the container can call init() after autowiring