> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# NoOpDownloadListener

> NoOpDownloadListener — Kinetica Rust API

[gpudb\_api](https://docs.kinetica.com/content/api/rust/index.md)::<wbr />[filesystem](https://docs.kinetica.com/content/api/rust/filesystem/index.md)
[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/listeners.rs#L289)&#x20;

<pre>`pub struct NoOpDownloadListener;`</pre>

A no-op download listener that ignores all callbacks. Useful for operations where progress tracking is not needed.Passing it behaves exactly like passing `None`; it is for code that needs a `&dyn FileDownloadListener` in hand regardless.

## Trait Implementations

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/listeners.rs#L291-L295)
impl [FileDownloadListener](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md) for [NoOpDownloadListener](https://docs.kinetica.com/content/api/rust/filesystem/struct.NoOpDownloadListener.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/listeners.rs#L292)
fn [on\_multi\_part\_download\_complete](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md#tymethod.on_multi_part_download_complete)(\&self, \_results: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[OperationResult](https://docs.kinetica.com/content/api/rust/filesystem/struct.OperationResult.md)>)

Called when all parts of a multi-part download have been completed. [Read more](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md#tymethod.on_multi_part_download_complete)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/listeners.rs#L293)
fn [on\_part\_download](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md#tymethod.on_part_download)(\&self, \_result: [OperationResult](https://docs.kinetica.com/content/api/rust/filesystem/struct.OperationResult.md))

Called whenever a single part of a multi-part download has been completed. [Read more](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md#tymethod.on_part_download)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/listeners.rs#L294)
fn [on\_full\_file\_download](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md#tymethod.on_full_file_download)(\&self, \_file\_names: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>)

Called once per batch of whole files fetched in one request, with the KiFS names of those saved, when at least one was. A file skipped because it already existed locally and overwriting is off counts as saved. [Read more](https://docs.kinetica.com/content/api/rust/filesystem/trait.FileDownloadListener.md#tymethod.on_full_file_download)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.