Skip to content

Commit

Permalink
include jvmId in archived recording event
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewazores committed Sep 5, 2024
1 parent 08bb790 commit 5a2acc3
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 6 deletions.
11 changes: 9 additions & 2 deletions src/main/java/io/cryostat/recordings/ActiveRecording.java
Original file line number Diff line number Diff line change
Expand Up @@ -243,8 +243,8 @@ public record ArchivedRecordingEvent(
// has disappeared and we are emitting an event regarding an archived recording
// originally sourced from that target, or if we are accepting a recording upload from a
// client.
// This should embed the target jvmId and optionally the database ID.
public record Payload(String target, ArchivedRecordings.ArchivedRecording recording) {
public record Payload(
String target, String jvmId, ArchivedRecordings.ArchivedRecording recording) {
public Payload {
Objects.requireNonNull(recording);
}
Expand All @@ -253,6 +253,13 @@ public static Payload of(
URI connectUrl, ArchivedRecordings.ArchivedRecording recording) {
return new Payload(
Optional.ofNullable(connectUrl).map(URI::toString).orElse(null),
Optional.ofNullable(connectUrl)
.flatMap(
url ->
Target.find("connectUrl", url)
.<Target>singleResultOptional())
.map(t -> t.jvmId)
.orElse(null),
recording);
}
}
Expand Down
7 changes: 3 additions & 4 deletions src/main/java/io/cryostat/recordings/RecordingHelper.java
Original file line number Diff line number Diff line change
Expand Up @@ -1203,17 +1203,16 @@ public ArchivedRecording updateArchivedRecordingMetadata(
size,
lastModified.getEpochSecond());

notifyArchiveMetadataUpdate(updatedRecording);
notifyArchiveMetadataUpdate(jvmId, updatedRecording);
return updatedRecording;
}

private void notifyArchiveMetadataUpdate(ArchivedRecording updatedRecording) {

private void notifyArchiveMetadataUpdate(String jvmId, ArchivedRecording updatedRecording) {
var event =
new ArchivedRecordingEvent(
ActiveRecordings.RecordingEventCategory.METADATA_UPDATED,
new ArchivedRecordingEvent.Payload(
updatedRecording.downloadUrl(), updatedRecording));
updatedRecording.downloadUrl(), jvmId, updatedRecording));
bus.publish(event.category().category(), event.payload().recording());
bus.publish(
MessagingServer.class.getName(),
Expand Down

0 comments on commit 5a2acc3

Please sign in to comment.