refactor process_document_addition_batch

This commit is contained in:
ad hoc 2022-06-02 15:11:50 +02:00
parent 64e3096790
commit 8fc3b7d3b0
No known key found for this signature in database
GPG Key ID: 4F00A782990CC643
2 changed files with 7 additions and 10 deletions

View File

@ -170,7 +170,7 @@ mod real {
}
}
pub async fn process_document_addition_batch(&self, mut tasks: Vec<Task>) -> Vec<Task> {
pub async fn process_document_addition_batch(&self, tasks: &mut [Task]) {
fn get_content_uuid(task: &Task) -> Uuid {
match task {
Task {
@ -218,7 +218,8 @@ mod real {
timestamp: now,
});
}
return tasks;
return;
}
};
@ -253,8 +254,6 @@ mod real {
for task in tasks.iter_mut() {
task.events.push(event.clone());
}
tasks
}
_ => panic!("invalid batch!"),
}
@ -355,7 +354,7 @@ mod real {
}
pub async fn process_task(&self, task: &mut Task) {
match self.process_task_inner(&task).await {
match self.process_task_inner(task).await {
Ok(res) => task.events.push(TaskEvent::succeeded(res)),
Err(e) => task.events.push(TaskEvent::failed(e)),
}
@ -509,7 +508,7 @@ mod test {
Self::Mock(mocker)
}
pub async fn process_document_addition_batch(&self, tasks: Vec<Task>) -> Vec<Task> {
pub async fn process_document_addition_batch(&self, tasks: &mut [Task]) {
match self {
IndexResolver::Real(r) => r.process_document_addition_batch(tasks).await,
IndexResolver::Mock(m) => unsafe {

View File

@ -19,9 +19,7 @@ where
async fn process_batch(&self, mut batch: Batch) -> Batch {
match batch.content {
BatchContent::DocumentsAdditionBatch(ref mut tasks) => {
*tasks = self
.process_document_addition_batch(std::mem::take(tasks))
.await;
self.process_document_addition_batch(tasks).await;
}
BatchContent::IndexUpdate(ref mut task) => {
self.process_task(task).await;
@ -174,7 +172,7 @@ mod test {
let mocker = Mocker::default();
match task.content {
TaskContent::DocumentAddition { .. } => {
mocker.when::<Vec<Task>, Vec<Task>>("process_document_addition_batch").then(|tasks| tasks);
mocker.when::<&mut [Task], ()>("process_document_addition_batch").then(|_| ());
}
TaskContent::Dump { .. } => (),
_ => {