-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNotificação.java
36 lines (28 loc) · 1.07 KB
/
Notificação.java
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
// Padrão Observer aplicado para notificar operadores sobre eventos.
public interface NotificacaoObservador {
// Método para atualizar o observador com uma mensagem.
void atualizar(String mensagem);
}
// Implementação do observador que reage às notificações.
public class Operador implements NotificacaoObservador {
private String nome;
@Override
public void atualizar(String mensagem) {
System.out.println("Operador " + nome + " notificado: " + mensagem);
}
}
// Classe Notificacao que mantém uma lista de observadores e os notifica.
public class Notificacao {
private List<NotificacaoObservador> observadores = new ArrayList<>();
public void adicionarObservador(NotificacaoObservador observador) {
observadores.add(observador);
}
public void removerObservador(NotificacaoObservador observador) {
observadores.remove(observador);
}
public void notificarObservadores(String mensagem) {
for (NotificacaoObservador observador : observadores) {
observador.atualizar(mensagem);
}
}
}