Skip to content

Commit 192124e

Browse files
committed
fix: only update server in database when something was actually changed (caused servers to not stop)
1 parent 09ac6b6 commit 192124e

File tree

1 file changed

+42
-40
lines changed
  • controller-runtime/src/main/kotlin/app/simplecloud/controller/runtime/server

1 file changed

+42
-40
lines changed

controller-runtime/src/main/kotlin/app/simplecloud/controller/runtime/server/ServerService.kt

Lines changed: 42 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -74,48 +74,50 @@ class ServerService(
7474
?: throw StatusException(Status.NOT_FOUND.withDescription("Server not found"))
7575
val wasUpdated = before != server
7676

77-
if (wasUpdated) {
78-
pubSubClient.publish(
79-
"event",
80-
ServerUpdateEvent.newBuilder()
81-
.setUpdatedAt(ProtobufTimestamp.fromLocalDateTime(LocalDateTime.now()))
82-
.setServerBefore(before.toDefinition()).setServerAfter(request.server).build()
83-
)
77+
if (!wasUpdated) {
78+
return server.toDefinition()
79+
}
80+
81+
pubSubClient.publish(
82+
"event",
83+
ServerUpdateEvent.newBuilder()
84+
.setUpdatedAt(ProtobufTimestamp.fromLocalDateTime(LocalDateTime.now()))
85+
.setServerBefore(before.toDefinition()).setServerAfter(request.server).build()
86+
)
8487

85-
pubSubClient.publish(MetricsEventNames.RECORD_METRIC, metric {
86-
metricType = "ACTIVITY_LOG"
87-
metricValue = 1L
88-
time = ProtobufTimestamp.fromLocalDateTime(LocalDateTime.now())
89-
meta.addAll(
90-
listOf(
91-
metricMeta {
92-
dataName = "displayName"
93-
dataValue = "${server.group} #${server.numericalId}"
94-
},
95-
metricMeta {
96-
dataName = "status"
97-
dataValue = "EDITED"
98-
},
99-
metricMeta {
100-
dataName = "resourceType"
101-
dataValue = "SERVER"
102-
},
103-
metricMeta {
104-
dataName = "groupName"
105-
dataValue = server.group
106-
},
107-
metricMeta {
108-
dataName = "numericalId"
109-
dataValue = server.numericalId.toString()
110-
},
111-
metricMeta {
112-
dataName = "by"
113-
dataValue = "API"
114-
}
115-
)
88+
pubSubClient.publish(MetricsEventNames.RECORD_METRIC, metric {
89+
metricType = "ACTIVITY_LOG"
90+
metricValue = 1L
91+
time = ProtobufTimestamp.fromLocalDateTime(LocalDateTime.now())
92+
meta.addAll(
93+
listOf(
94+
metricMeta {
95+
dataName = "displayName"
96+
dataValue = "${server.group} #${server.numericalId}"
97+
},
98+
metricMeta {
99+
dataName = "status"
100+
dataValue = "EDITED"
101+
},
102+
metricMeta {
103+
dataName = "resourceType"
104+
dataValue = "SERVER"
105+
},
106+
metricMeta {
107+
dataName = "groupName"
108+
dataValue = server.group
109+
},
110+
metricMeta {
111+
dataName = "numericalId"
112+
dataValue = server.numericalId.toString()
113+
},
114+
metricMeta {
115+
dataName = "by"
116+
dataValue = "API"
117+
}
116118
)
117-
})
118-
}
119+
)
120+
})
119121

120122
serverRepository.save(server)
121123
return server.toDefinition()

0 commit comments

Comments
 (0)