Skip to content

Commit cd91ef5

Browse files
committed
Remove unnecessary type
1 parent 1dc9060 commit cd91ef5

File tree

10 files changed

+20
-90
lines changed

10 files changed

+20
-90
lines changed

rust/agama-manager/src/message.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@
1919
// find current contact information at www.suse.com.
2020

2121
use agama_utils::actor::Message;
22-
use agama_utils::api::{Action, Config, Issue, Proposal, Scope, Status, SystemInfo};
23-
use std::collections::HashMap;
22+
use agama_utils::api::{Action, Config, IssueMap, Proposal, Status, SystemInfo};
2423

2524
/// Gets the installation status.
2625
pub struct GetStatus;
@@ -99,7 +98,7 @@ impl Message for GetProposal {
9998
pub struct GetIssues;
10099

101100
impl Message for GetIssues {
102-
type Reply = HashMap<Scope, Vec<Issue>>;
101+
type Reply = IssueMap;
103102
}
104103

105104
/// Runs the given action.

rust/agama-manager/src/service.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,11 @@ use crate::message;
2323
use agama_utils::actor::{self, Actor, Handler, MessageHandler};
2424
use agama_utils::api::event;
2525
use agama_utils::api::status::State;
26-
use agama_utils::api::{Action, Config, Event, Issue, Proposal, Scope, Status, SystemInfo};
26+
use agama_utils::api::{Action, Config, Event, IssueMap, Proposal, Scope, Status, SystemInfo};
2727
use agama_utils::issue;
2828
use agama_utils::progress;
2929
use async_trait::async_trait;
3030
use merge_struct::merge;
31-
use std::collections::HashMap;
3231
use tokio::sync::broadcast;
3332

3433
#[derive(Debug, thiserror::Error)]
@@ -187,10 +186,7 @@ impl MessageHandler<message::GetProposal> for Service {
187186
#[async_trait]
188187
impl MessageHandler<message::GetIssues> for Service {
189188
/// It returns the current proposal, if any.
190-
async fn handle(
191-
&mut self,
192-
_message: message::GetIssues,
193-
) -> Result<HashMap<Scope, Vec<Issue>>, Error> {
189+
async fn handle(&mut self, _message: message::GetIssues) -> Result<IssueMap, Error> {
194190
Ok(self.issues.call(issue::message::Get).await?)
195191
}
196192
}

rust/agama-server/src/server.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,3 @@
2020

2121
pub mod web;
2222
pub use web::server_service;
23-
pub mod types;

rust/agama-server/src/server/types.rs

Lines changed: 0 additions & 61 deletions
This file was deleted.

rust/agama-server/src/server/web.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,13 @@
2020

2121
//! This module implements Agama's HTTP API.
2222
23-
use crate::server::types::IssuesMap;
2423
use agama_lib::error::ServiceError;
2524
use agama_manager as manager;
2625
use agama_manager::message;
2726
use agama_utils::actor::Handler;
2827
use agama_utils::api::config;
2928
use agama_utils::api::event;
30-
use agama_utils::api::{Action, Config, Status, SystemInfo};
29+
use agama_utils::api::{Action, Config, IssueMap, Status, SystemInfo};
3130
use anyhow;
3231
use axum::extract::State;
3332
use axum::response::{IntoResponse, Response};
@@ -222,13 +221,13 @@ async fn get_proposal(State(state): State<ServerState>) -> ServerResult<Response
222221
path = "/issues",
223222
context_path = "/api/v2",
224223
responses(
225-
(status = 200, description = "Agama issues", body = IssuesMap),
224+
(status = 200, description = "Agama issues", body = IssueMap),
226225
(status = 400, description = "Not possible to retrieve the issues")
227226
)
228227
)]
229-
async fn get_issues(State(state): State<ServerState>) -> ServerResult<Json<IssuesMap>> {
228+
async fn get_issues(State(state): State<ServerState>) -> ServerResult<Json<IssueMap>> {
230229
let issues = state.manager.call(message::GetIssues).await?;
231-
let issues_map: IssuesMap = issues.into();
230+
let issues_map: IssueMap = issues.into();
232231
Ok(Json(issues_map))
233232
}
234233

rust/agama-server/src/web/docs/config.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,6 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
154154
.schema_from::<agama_lib::users::RootUserSettings>()
155155
.schema_from::<agama_lib::users::UserPassword>()
156156
.schema_from::<agama_lib::users::UserSettings>()
157-
.schema_from::<crate::server::types::IssuesMap>()
158157
.schema_from::<crate::software::web::SoftwareProposal>()
159158
.schema_from::<agama_utils::api::Status>()
160159
.schema_from::<agama_utils::api::status::State>()

rust/agama-utils/src/api.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ pub mod status;
3434
pub use status::Status;
3535

3636
pub mod issue;
37-
pub use issue::{Issue, IssueSeverity, IssueSource};
37+
pub use issue::{Issue, IssueMap, IssueSeverity, IssueSource};
3838

3939
mod system_info;
4040
pub use system_info::SystemInfo;

rust/agama-utils/src/api/issue.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,13 @@
1818
// To contact SUSE LLC about this file by physical or electronic mail, you may
1919
// find current contact information at www.suse.com.
2020

21+
use crate::api::scope::Scope;
2122
use serde::{Deserialize, Serialize};
23+
use std::collections::HashMap;
2224
use strum::FromRepr;
2325

26+
pub type IssueMap = HashMap<Scope, Vec<Issue>>;
27+
2428
#[derive(thiserror::Error, Debug)]
2529
pub enum Error {
2630
#[error("D-Bus conversion error")]

rust/agama-utils/src/issue/message.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,13 @@
1919
// find current contact information at www.suse.com.
2020

2121
use crate::actor::Message;
22-
use crate::api::issue::Issue;
22+
use crate::api::issue::{Issue, IssueMap};
2323
use crate::api::Scope;
24-
use std::collections::HashMap;
2524

2625
pub struct Get;
2726

2827
impl Message for Get {
29-
type Reply = HashMap<Scope, Vec<Issue>>;
28+
type Reply = IssueMap;
3029
}
3130

3231
// FIXME: consider an alternative approach to avoid pub(crate),

rust/agama-utils/src/issue/service.rs

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,10 @@ use crate::actor::{self, Actor, MessageHandler};
2222
use crate::api::event;
2323
use crate::api::event::Event;
2424
use crate::api::issue;
25-
use crate::api::issue::Issue;
26-
use crate::api::scope::Scope;
25+
use crate::api::issue::IssueMap;
2726
use crate::issue::message;
2827
use async_trait::async_trait;
29-
use std::collections::{HashMap, HashSet};
28+
use std::collections::HashSet;
3029
use tokio::sync::broadcast;
3130

3231
#[derive(thiserror::Error, Debug)]
@@ -40,14 +39,14 @@ pub enum Error {
4039
}
4140

4241
pub struct Service {
43-
issues: HashMap<Scope, Vec<Issue>>,
42+
issues: IssueMap,
4443
events: event::Sender,
4544
}
4645

4746
impl Service {
4847
pub fn new(events: event::Sender) -> Self {
4948
Self {
50-
issues: HashMap::new(),
49+
issues: IssueMap::new(),
5150
events,
5251
}
5352
}
@@ -59,10 +58,7 @@ impl Actor for Service {
5958

6059
#[async_trait]
6160
impl MessageHandler<message::Get> for Service {
62-
async fn handle(
63-
&mut self,
64-
_message: message::Get,
65-
) -> Result<HashMap<Scope, Vec<Issue>>, Error> {
61+
async fn handle(&mut self, _message: message::Get) -> Result<IssueMap, Error> {
6662
Ok(self.issues.clone())
6763
}
6864
}

0 commit comments

Comments
 (0)