Skip to content

Commit 65ffad8

Browse files
committed
impl From<AppState> for ServerState
1 parent cf341fd commit 65ffad8

1 file changed

Lines changed: 13 additions & 7 deletions

File tree

src/http.rs

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,18 @@ enum ServerState {
7777
Connected,
7878
}
7979

80+
impl From<&AppState> for ServerState {
81+
fn from(state: &AppState) -> Self {
82+
if !state.grpc_server.setup_completed() {
83+
Self::Setup
84+
} else if state.grpc_server.connected.load(Ordering::Relaxed) {
85+
Self::Connected
86+
} else {
87+
Self::Disconnected
88+
}
89+
}
90+
}
91+
8092
#[derive(Serialize)]
8193
struct AppInfo {
8294
version: &'static str,
@@ -85,13 +97,7 @@ struct AppInfo {
8597

8698
async fn app_info(State(state): State<AppState>) -> Result<Json<AppInfo>, ApiError> {
8799
let version = crate_version!();
88-
let server_state = if !state.grpc_server.setup_completed() {
89-
ServerState::Setup
90-
} else if state.grpc_server.connected.load(Ordering::Relaxed) {
91-
ServerState::Connected
92-
} else {
93-
ServerState::Disconnected
94-
};
100+
let server_state = ServerState::from(&state);
95101

96102
Ok(Json(AppInfo {
97103
version,

0 commit comments

Comments
 (0)