/
Hipahopa808
/
SpringCourse
Обзор
Документация
Войти
/
Hipahopa808
/
SpringCourse
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Lesson13.HWSolution/src/main/java/ru/alishev/springcourse/config/SpringConfig.java
54 строки
1 KB
Neil Alishev
Add Lesson 13 code and HW solution
23 окт 2019, 19:37
23 окт 2019, 19:37
3137167
Код
Авторство
О чём код?
package ru.alishev.springcourse.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import org.springframework.context.annotation.Scope; import ru.alishev.springcourse.Computer; import ru.alishev.springcourse.Music; import ru.alishev.springcourse.MusicPlayer; import ru.alishev.springcourse.genres.ClassicalMusic; import ru.alishev.springcourse.genres.JazzMusic; import ru.alishev.springcourse.genres.RockMusic; import java.util.Arrays; import java.util.List; /** * @author Neil Alishev */ @Configuration @PropertySource("classpath:musicPlayer.properties") public class SpringConfig { @Bean @Scope("prototype") public ClassicalMusic classicalMusic() { return new ClassicalMusic(); } @Bean public RockMusic rockMusic() { return new RockMusic(); } @Bean public JazzMusic jazzMusic() { return new JazzMusic(); } @Bean public List<Music> musicList() { // Этот лист неизменяемый (immutable) return Arrays.asList(classicalMusic(), rockMusic(), jazzMusic()); } @Bean public MusicPlayer musicPlayer() { return new MusicPlayer(musicList()); } @Bean public Computer computer() { return new Computer(musicPlayer()); } }