Fix shortcommings

This commit is contained in:
2022-10-12 17:38:40 +02:00
parent 1d4cda7c48
commit 78b9732ca1
8 changed files with 26 additions and 15 deletions

View File

@@ -7,8 +7,7 @@ use crate::{
configs::AppConfig,
database::ConnectionPool,
services::{
item_service::{DefaultItemService, MemoryItemService},
project_service::{DefaultProjectService, MemoryProjectService},
item_service::MemoryItemService, project_service::MemoryProjectService,
user_service::DefaultUserService,
},
};
@@ -26,14 +25,14 @@ impl ServiceRegister {
let item_service = Arc::new(MemoryItemService::new()) as DynItemService;
let project_service = Arc::new(MemoryProjectService::new()) as DynProjectService;
let user_service = Arc::new(DefaultUserService::new(pool.clone())) as DynUserService;
let user_service = Arc::new(DefaultUserService::new(pool)) as DynUserService;
info!("services created succesfully");
return Self {
Self {
item_service,
user_service,
project_service,
};
}
}
}

View File

@@ -3,6 +3,7 @@ use std::{
sync::{Arc, Mutex},
};
use anyhow::Context;
use axum::async_trait;
use como_core::items::ItemService;
use como_domain::item::{
@@ -21,6 +22,12 @@ impl DefaultItemService {
}
}
impl Default for DefaultItemService {
fn default() -> Self {
Self::new()
}
}
#[async_trait]
impl ItemService for DefaultItemService {
async fn add_item(&self, _item: CreateItemDto) -> anyhow::Result<CreatedItemDto> {
@@ -48,6 +55,12 @@ impl MemoryItemService {
}
}
impl Default for MemoryItemService {
fn default() -> Self {
Self::new()
}
}
#[async_trait]
impl ItemService for MemoryItemService {
async fn add_item(&self, create_item: CreateItemDto) -> anyhow::Result<CreatedItemDto> {
@@ -71,7 +84,7 @@ impl ItemService for MemoryItemService {
if let Ok(item_store) = self.item_store.lock() {
let item = item_store
.get(&query.item_id.to_string())
.ok_or(anyhow::anyhow!("could not find item"))?;
.context("could not find item")?;
return Ok(item.clone());
} else {
Err(anyhow::anyhow!("could not unlock item_store"))