MCPcopy Index your code
hub / github.com/BitVM/BitVM / read_from_data_store

Method read_from_data_store

bridge/src/client/client.rs:278–315  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

276 */
277
278 async fn read_from_data_store(&mut self) {
279 let latest_file_names_result = Self::get_latest_file_names(
280 &self.data_store,
281 Some(&self.remote_file_path),
282 self.latest_processed_file_name.clone(),
283 )
284 .await;
285
286 if latest_file_names_result.is_ok() {
287 let mut latest_file_names = latest_file_names_result.unwrap();
288 if !latest_file_names.is_empty() {
289 // fetch latest valid file
290 let (latest_file, latest_file_name) =
291 self.fetch_latest_valid_file(&mut latest_file_names).await;
292 if latest_file.is_some() && latest_file_name.is_some() {
293 save_local_public_file(
294 &self.local_file_path,
295 latest_file_name.as_ref().unwrap(),
296 &serialize(&latest_file.as_ref().unwrap()),
297 );
298 self.latest_processed_file_name = latest_file_name;
299
300 // fetch and process all the previous files if latest valid file exists
301 let result =
302 Self::process_files_by_timestamp(self, latest_file_names, TEN_MINUTES)
303 .await;
304 match result {
305 Ok(_) => (), // println!("Ok"),
306 Err(err) => println!("Error: {}", err),
307 }
308
309 self.merge_data(latest_file.unwrap()); // merge the latest data at the end
310 }
311 }
312 } else {
313 println!("Error: {}", latest_file_names_result.unwrap_err());
314 }
315 }
316
317 async fn read_from_l2(&mut self) {
318 let peg_out_result = self.chain_service.get_peg_out_init().await;

Callers 1

syncMethod · 0.80

Calls 7

save_local_public_fileFunction · 0.85
serializeFunction · 0.85
cloneMethod · 0.80
is_emptyMethod · 0.80
as_refMethod · 0.80
merge_dataMethod · 0.80

Tested by

no test coverage detected