Improved error handling (part 1)

This commit is contained in:
mdecimus
2024-07-11 18:44:51 +02:00
parent ea77a98260
commit 0c2a3f09fe
179 changed files with 3409 additions and 3048 deletions

View File

@@ -171,10 +171,7 @@ impl<T> GetRequest<T> {
}
}
pub fn unwrap_ids(
&mut self,
max_objects_in_get: usize,
) -> Result<Option<Vec<Id>>, MethodError> {
pub fn unwrap_ids(&mut self, max_objects_in_get: usize) -> trc::Result<Option<Vec<Id>>> {
if let Some(ids) = self.ids.take() {
let ids = ids.unwrap();
if ids.len() <= max_objects_in_get {
@@ -184,7 +181,7 @@ impl<T> GetRequest<T> {
.collect::<Vec<_>>(),
))
} else {
Err(MethodError::RequestTooLarge)
Err(MethodError::RequestTooLarge.into())
}
} else {
Ok(None)
@@ -194,7 +191,7 @@ impl<T> GetRequest<T> {
pub fn unwrap_blob_ids(
&mut self,
max_objects_in_get: usize,
) -> Result<Option<Vec<BlobId>>, MethodError> {
) -> trc::Result<Option<Vec<BlobId>>> {
if let Some(ids) = self.ids.take() {
let ids = ids.unwrap();
if ids.len() <= max_objects_in_get {
@@ -204,7 +201,7 @@ impl<T> GetRequest<T> {
.collect::<Vec<_>>(),
))
} else {
Err(MethodError::RequestTooLarge)
Err(MethodError::RequestTooLarge.into())
}
} else {
Ok(None)

View File

@@ -400,7 +400,7 @@ impl RequestPropertyParser for RequestArguments {
}
impl<T> SetRequest<T> {
pub fn validate(&self, max_objects_in_set: usize) -> Result<(), MethodError> {
pub fn validate(&self, max_objects_in_set: usize) -> trc::Result<()> {
if self.create.as_ref().map_or(0, |objs| objs.len())
+ self.update.as_ref().map_or(0, |objs| objs.len())
+ self.destroy.as_ref().map_or(0, |objs| {
@@ -412,7 +412,7 @@ impl<T> SetRequest<T> {
})
> max_objects_in_set
{
Err(MethodError::RequestTooLarge)
Err(MethodError::RequestTooLarge.into())
} else {
Ok(())
}
@@ -460,10 +460,7 @@ impl SetRequest<RequestArguments> {
}
impl SetResponse {
pub fn from_request<T>(
request: &SetRequest<T>,
max_objects: usize,
) -> Result<Self, MethodError> {
pub fn from_request<T>(request: &SetRequest<T>, max_objects: usize) -> trc::Result<Self> {
let n_create = request.create.as_ref().map_or(0, |objs| objs.len());
let n_update = request.update.as_ref().map_or(0, |objs| objs.len());
let n_destroy = request.destroy.as_ref().map_or(0, |objs| {
@@ -491,7 +488,7 @@ impl SetResponse {
state_change: None,
})
} else {
Err(MethodError::RequestTooLarge)
Err(MethodError::RequestTooLarge.into())
}
}