1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.jboss.as.quickstarts.kitchensink_ear.data;
18
19 import javax.annotation.PostConstruct;
20 import javax.enterprise.context.RequestScoped;
21 import javax.enterprise.event.Observes;
22 import javax.enterprise.event.Reception;
23 import javax.enterprise.inject.Produces;
24 import javax.inject.Inject;
25 import javax.inject.Named;
26 import java.util.List;
27
28 import org.jboss.as.quickstarts.kitchensink_ear.model.Member;
29
30 @RequestScoped
31 public class MemberListProducer {
32
33 @Inject
34 private MemberRepository memberRepository;
35
36 private List<Member> members;
37
38
39
40 @Produces
41 @Named
42 public List<Member> getMembers() {
43 return members;
44 }
45
46 public void onMemberListChanged(@Observes(notifyObserver = Reception.IF_EXISTS) final Member member) {
47 retrieveAllMembersOrderedByName();
48 }
49
50 @PostConstruct
51 public void retrieveAllMembersOrderedByName() {
52 members = memberRepository.findAllOrderedByName();
53 }
54 }