-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathNewsAgency.java
More file actions
54 lines (43 loc) · 1.3 KB
/
NewsAgency.java
File metadata and controls
54 lines (43 loc) · 1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import java.util.*;
public class NewsAgency implements NewsSubject {
private String newsTitle;
private String newsContent;
private List<Subscriber> subscriberList;
public NewsAgency() {
this.subscriberList = new ArrayList<>();
}
// Getters and Setters for newsTitle and newsContent
public String getNewsTitle() {
return newsTitle;
}
public void setNewsTitle(String newsTitle) {
this.newsTitle = newsTitle;
}
public String getNewsContent() {
return newsContent;
}
public void setNewsContent(String newsContent) {
this.newsContent = newsContent;
}
public List<Subscriber> getSubscriberList() {
return subscriberList;
}
public void setSubscriberList(List<Subscriber> subscriberList) {
this.subscriberList = subscriberList;
}
@Override
public void attach(Subscriber subscriber) {
subscriberList.add(subscriber);
}
@Override
public void detach(Subscriber subscriber) {
subscriberList.remove(subscriber);
}
@Override
public void notifying(String news) {
this.newsContent = news; // Update the news content
for (Subscriber subscriber : subscriberList) {
subscriber.updateNews(newsTitle + ": " + newsContent);
}
}
}