Original code:
import org.springframework.beans.factory.config.ConfigurableBeanFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.*; import org.springframework.stereotype.*; @FunctionalInterface interface TemperatureMeasurementCallback { public void temperatureMeasured(int temperature); } interface Thermometer { public int measure(); } @Configuration @Import({FakeThermometer.class, WeatherForecastService.class}) class Config { @Bean public TemperatureMeasurementCallback callback() { return (temperature) -> System.out.println(temperature); } } @Component class FakeThermometer implements Thermometer { private int currentTemperature = 21; @Override public int measure() { return currentTemperature++; } } @Service public class WeatherForecastService { @Autowired private Thermometer thermometer; @Autowired private TemperatureMeasurementCallback callback; public void takeTemperatureMeasurement() { int temperature = thermometer.measure(); callback.temperatureMeasured(temperature); } }
Dashboard
Start Trial
Sign In
Home
Product
Features
Use Cases
Customers
ROI Calculator
Integrations
Assessments
Tests
Questions
Pricing
Resources
Book: Evidence-Based Hiring
Blog
Support
Contact Us
Legal
For Jobseekers
© TestDome, 2024.