@@ -148,28 +148,22 @@ pub async fn update_state(req: HttpRequest, state: String) -> Result<impl Respon
148
148
149
149
match current_state {
150
150
AlertState :: Triggered => {
151
- match new_state {
152
- AlertState :: Triggered => {
153
- let msg = format ! ( "Not allowed to manually go from Triggered to {new_state}" ) ;
154
- return Err ( AlertError :: InvalidStateChange ( msg) ) ;
155
- }
156
- _ => {
157
- // update state on disk and in memory
158
- ALERTS . update_state ( alert_id, new_state, true ) . await ?;
159
- }
151
+ if new_state == AlertState :: Triggered {
152
+ let msg = format ! ( "Not allowed to manually go from Triggered to {new_state}" ) ;
153
+ return Err ( AlertError :: InvalidStateChange ( msg) ) ;
154
+ } else {
155
+ // update state on disk and in memory
156
+ ALERTS . update_state ( alert_id, new_state, true ) . await ?;
160
157
}
161
158
}
162
159
AlertState :: Silenced => {
163
160
// from here, the user can only go to Resolved
164
- match new_state {
165
- AlertState :: Resolved => {
166
- // update state on disk and in memory
167
- ALERTS . update_state ( alert_id, new_state, true ) . await ?;
168
- }
169
- _ => {
170
- let msg = format ! ( "Not allowed to manually go from Silenced to {new_state}" ) ;
171
- return Err ( AlertError :: InvalidStateChange ( msg) ) ;
172
- }
161
+ if new_state == AlertState :: Resolved {
162
+ // update state on disk and in memory
163
+ ALERTS . update_state ( alert_id, new_state, true ) . await ?;
164
+ } else {
165
+ let msg = format ! ( "Not allowed to manually go from Silenced to {new_state}" ) ;
166
+ return Err ( AlertError :: InvalidStateChange ( msg) ) ;
173
167
}
174
168
}
175
169
AlertState :: Resolved => {
0 commit comments