Skip to content
This repository was archived by the owner on Jul 14, 2026. It is now read-only.

Commit 8209562

Browse files
authored
Merge pull request #79 from bright-room/claude/issue-63-20260310-0309
Close #63: Add EndpointGateScheduleChangedEvent to WebMVC event-listener example
2 parents 2479812 + 029e213 commit 8209562

2 files changed

Lines changed: 18 additions & 0 deletions

File tree

examples/webmvc/event-listener/src/main/java/net/brightroom/example/eventlistener/AuditEventListener.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import java.util.concurrent.CopyOnWriteArrayList;
66
import net.brightroom.endpointgate.spring.core.event.EndpointGateChangedEvent;
77
import net.brightroom.endpointgate.spring.core.event.EndpointGateRemovedEvent;
8+
import net.brightroom.endpointgate.spring.core.event.EndpointGateScheduleChangedEvent;
89
import org.slf4j.Logger;
910
import org.slf4j.LoggerFactory;
1011
import org.springframework.context.event.EventListener;
@@ -34,6 +35,16 @@ public void onRemoved(EndpointGateRemovedEvent event) {
3435
log.info(entry);
3536
}
3637

38+
@EventListener
39+
public void onScheduleChanged(EndpointGateScheduleChangedEvent event) {
40+
String entry =
41+
String.format(
42+
"[%s] Schedule changed: id=%s, schedule=%s",
43+
Instant.now(), event.gateId(), event.schedule());
44+
auditLog.add(entry);
45+
log.info(entry);
46+
}
47+
3748
public List<String> getAuditLog() {
3849
return List.copyOf(auditLog);
3950
}

examples/webmvc/event-listener/src/main/java/net/brightroom/example/eventlistener/CacheInvalidationListener.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import net.brightroom.endpointgate.spring.core.event.EndpointGateChangedEvent;
44
import net.brightroom.endpointgate.spring.core.event.EndpointGateRemovedEvent;
5+
import net.brightroom.endpointgate.spring.core.event.EndpointGateScheduleChangedEvent;
56
import org.slf4j.Logger;
67
import org.slf4j.LoggerFactory;
78
import org.springframework.context.event.EventListener;
@@ -29,4 +30,10 @@ public void onRemoved(EndpointGateRemovedEvent event) {
2930
log.info("Invalidating cache for removed gate: {}", event.gateId());
3031
cache.invalidate(event.gateId());
3132
}
33+
34+
@EventListener
35+
public void onScheduleChanged(EndpointGateScheduleChangedEvent event) {
36+
cache.invalidate(event.gateId());
37+
log.info("Cache evicted for schedule change: {}", event.gateId());
38+
}
3239
}

0 commit comments

Comments
 (0)