Lines Matching defs:task

84         let task = map.get(&(session_id, channel_id));
85 task.is_some()
97 let task = map.get(&(session_id, channel_id));
98 task.cloned()
104 crate::info!("hdcfile stop task, session_id:{}, task_size: {}", session_id, map.len());
109 let mut task = _iter.1.lock().await;
110 task.transfer.stop_run = true;
124 let task = _iter.1.lock().await;
125 let command = task.transfer.command_str.clone();
137 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
139 "check_local_path get task is none session_id={session_id},channel_id={channel_id}"
143 let mut file_task = task.lock().await;
210 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
212 "begin_transfer get task is none session_id={session_id},channel_id={channel_id}"
216 let mut task = task.lock().await;
217 task.transfer.is_master = true;
218 drop(task);
237 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
239 "set_master_parameters get task is none session_id={session_id},channel_id={channel_id}"
243 let mut task = task.lock().await;
246 if task.transfer.server_or_daemon {
252 task.transfer.transfer_config.compress_type = CompressType::Lz4 as u8;
256 task.transfer.transfer_config.hold_timestamp = true;
260 task.transfer.transfer_config.update_if_new = true;
271 task.transfer.transfer_config.client_cwd = argv.get(i + 1).unwrap().clone();
281 task.transfer.remote_path = argv.last().unwrap().clone();
282 task.transfer.local_path = argv.get(argv.len() - 2).unwrap().clone();
283 if task.transfer.server_or_daemon {
288 let cwd = task.transfer.transfer_config.client_cwd.clone();
289 task.transfer.local_path = Base::extract_relative_path(&cwd, &task.transfer.local_path);
291 task.transfer.remote_path = String::from(".");
292 task.transfer.local_path = argv.get((argc - 1) as usize).unwrap().clone();
294 task.transfer.local_name = Base::get_file_name(&mut task.transfer.local_path).unwrap();
295 match metadata(task.transfer.local_path.clone()) {
298 task.transfer.is_dir = false;
301 task.transfer.is_dir = true;
302 task.transfer.task_queue = get_sub_files_resurively(&task.transfer.local_path.clone());
303 task.transfer.base_local_path = get_base_path(task.transfer.local_path.clone());
305 if !task.transfer.task_queue.is_empty() {
306 task.transfer.local_path = task.transfer.task_queue.pop().unwrap();
307 task.transfer.local_name =
308 match Base::get_relative_path(&task.transfer.base_local_path, &task.transfer.local_path) {
310 None => task.transfer.local_path.clone()
313 crate::error!("task transfer task_queue is empty");
318 let err_msg = format!("Error opening file: {}, path: {}", error, task.transfer.local_path);
337 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
340 let task = task.lock().await;
344 payload: task.transfer.transfer_config.serialize(),
346 transfer::put(task.transfer.session_id, file_check_message).await;
350 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
352 "check_slaver get task is none session_id={session_id:?},channel_id={channel_id:?}"
356 let mut task = task.lock().await;
361 task.transfer.file_size = transconfig.file_size;
362 task.file_size = transconfig.file_size;
363 task.transfer.local_path = transconfig.path;
364 task.transfer.is_master = false;
365 task.transfer.index = 0;
368 task.transfer.local_path.clone(),
371 task.transfer.command_str.push_str(command_str.as_str());
372 let local_path = task.transfer.local_path.clone();
374 task.transfer.transfer_config.compress_type = transconfig.compress_type;
375 match hdctransfer::check_local_path(&mut task.transfer, &local_path, &optional_name) {
382 if task.transfer.transfer_config.update_if_new {
383 crate::error!("task.transfer.transfer_config.update_if_new is true");
386 if task.dir_begin_time == 0 {
387 task.dir_begin_time = utils::get_current_time();
389 task.file_begin_time = utils::get_current_time();
412 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
414 "transfer_next get task is none session_id={session_id:?},channel_id={channel_id:?}"
418 let mut task = task.lock().await;
419 let Some(local_path) = task.transfer.task_queue.pop() else {
425 task.transfer.local_path = local_path;
426 task.transfer.local_name =
427 match Base::get_relative_path(&task.transfer.base_local_path, &task.transfer.local_path) {
429 None => task.transfer.local_path.clone()
431 drop(task);
436 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
438 "on_all_transfer_finish get task is none session_id={session_id:?},channel_id={channel_id:?}"
442 let task = task.lock().await;
443 let last_error = task.transfer.last_error;
444 let size = if task.file_cnt > 1 {
445 task.dir_size
447 task.file_size
449 let time = if task.file_cnt > 1 {
450 utils::get_current_time() - task.dir_begin_time
452 utils::get_current_time() - task.file_begin_time
459 size, task.file_cnt, time, rate
464 task.transfer.local_path,
476 transfer::send_channel_msg(task.transfer.channel_id, level, message)
489 task.transfer.session_id,
490 task.transfer.channel_id,
500 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
502 "do_file_finish get task is none session_id={session_id:?},channel_id={channel_id:?}"
506 let task = task.lock().await;
507 task.transfer.task_queue.is_empty()
535 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
537 "put_file_finish get task is none session_id={session_id:?},channel_id={channel_id:?}"
541 let mut task = task.lock().await;
543 task.file_cnt += 1;
544 task.dir_size += task.file_size;
586 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
588 "command_dispatch get task is none session_id={session_id:?},channel_id={channel_id:?}"
592 let task = task.lock().await;
593 hdctransfer::transfer_begin(&task.transfer, HdcCommand::FileData).await;
596 let Some(task) = FileTaskMap::get(session_id, channel_id).await else {
598 "command_dispatch get task is none session_id={session_id:?},channel_id={channel_id:?}"
602 let mut task = task.lock().await;
603 if hdctransfer::transfer_data(&mut task.transfer, _payload) {
604 drop(task);
645 Some(task) => {
647 let task = task.lock().await;
648 format!("Error opening file: {}, path: {}", error, task.transfer.local_path)