delta-incubator / delta-sharing-rs

A Minimalistic Rust Implementation of Delta Sharing Server.
MIT License
77 stars 8 forks source link

Add signer trait #40

Open tdikland opened 3 months ago

tdikland commented 3 months ago

Add an abstraction for creating signed URLs for the datafiles in (cloud) object storage.

tdikland commented 3 months ago

@roeap

A couple of considerations:

  1. I've kept the signature of the signer as simple as possible. We could always add some other methods with default implementation later.
  2. For now the signer trait is designed in such that it lives for the duration of the server (for simplicity). A major alternative is to have to instantiate a new signer for every request that fetches file actions from storage.
  3. Due to (2) it is a little bit more cumbersome to implement this trait for structs wrapping object_store::signer::Signer (but -of course- it still can be done).

Let me know if you think this is reasonable.