Я экспериментирую с шаблонами фабрик в Spring Boot и мне интересно, безопасно ли передавать экземпляр службы в метод или это сделает службу с состоянием? Я передавал Vehicle как часть подписи метода, но это было излишним.
Я имею в виду использование этого в приведенном ниже утверждении workshop.work(this)
@Slf4j
@Service
public class BikeService implements Vehicle {
@Override
public void manufacture(List<WorkShop> workShops) {
log.debug("**** Start Manufactoring Bike *****");
workShops.stream().forEach(workshop -> workshop.work(this));
log.debug("Done Manufactoring Bike.");
System.out.println();
}
@Override
public int minWorkTime() {
return 20;
}
}
Вызов
Vehicle bike = vehicleFactory.factoryService(VehicleType.BIKE);
bike.manufacture(vehicleFactory.addWorkShops(VehicleType.BIKE));