From d973d83c3dc46680ab08356a15d72e27d3898616 Mon Sep 17 00:00:00 2001
From: Hendrik Jungnitsch <hendrik.jungnitsch@gedoplan.de>
Date: Di, 04 Okt 2022 14:38:22 +0200
Subject: [PATCH] exercise06
---
src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/CocktailsProducer.java | 32 ++++++++++++++++++++++++++++++++
1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/CocktailsProducer.java b/src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/CocktailsProducer.java
index 3ceba94..9a50879 100644
--- a/src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/CocktailsProducer.java
+++ b/src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/CocktailsProducer.java
@@ -2,21 +2,53 @@
import de.gedoplan.seminar.sbt.di.exercise.domain.Cocktail;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
import org.springframework.web.context.annotation.RequestScope;
+import javax.annotation.PostConstruct;
import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+@RequestScope
@Configuration
public class CocktailsProducer {
@Autowired
private CocktailService cocktailService;
+ private List<Cocktail> cocktailsAlcoholic;
+ private List<Cocktail> cocktailsNonAlcoholic;
+
+ @PostConstruct
+ private void init() {
+ Map<Boolean,List<Cocktail>> cocktails = cocktailService.findAll().stream()
+ .collect(Collectors.groupingBy(Cocktail::isAlcoholic));
+ cocktailsAlcoholic = cocktails.get(true);
+ cocktailsNonAlcoholic = cocktails.get(false);
+ }
+
+ @Primary
@RequestScope
@Bean
protected List<Cocktail> getCocktails() {
return cocktailService.findAll();
}
+
+ @Qualifier("alcoholic")
+ @RequestScope
+ @Bean
+ protected List<Cocktail> getCocktailsAlcoholic() {
+ return cocktailsAlcoholic;
+ }
+
+ @Qualifier("non-alcoholic")
+ @RequestScope
+ @Bean
+ protected List<Cocktail> getCocktailsNonAlcoholic() {
+ return cocktailsNonAlcoholic;
+ }
}
--
Gitblit v1.7.1