Skip to content

Commit ee05e50

Browse files
author
Shrey Patel
committed
fixup! Merge pull request #5569 from matrix-org/dragonfly1033/split_media_db_2
1 parent bec1d07 commit ee05e50

File tree

10 files changed

+25
-31
lines changed

10 files changed

+25
-31
lines changed

crates/matrix-sdk-base/src/media/store/memory_store.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,16 @@ use std::{
1616
collections::HashMap,
1717
num::NonZeroUsize,
1818
sync::{Arc, RwLock as StdRwLock},
19-
time::SystemTime,
2019
};
2120

2221
use async_trait::async_trait;
2322
use matrix_sdk_common::{
2423
ring_buffer::RingBuffer, store_locks::memory_store_helper::try_take_leased_lock,
2524
};
26-
use ruma::{MxcUri, OwnedMxcUri, time::Instant};
25+
use ruma::{
26+
MxcUri, OwnedMxcUri,
27+
time::{Instant, SystemTime},
28+
};
2729

2830
use super::Result;
2931
use crate::media::{

crates/matrix-sdk-indexeddb/src/media_store/builder.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ use std::{rc::Rc, sync::Arc};
1616

1717
use matrix_sdk_base::media::store::{MediaService, MemoryMediaStore};
1818
use matrix_sdk_store_encryption::StoreCipher;
19-
use web_sys::DomException;
2019

2120
use crate::{
2221
media_store::{

crates/matrix-sdk-indexeddb/src/media_store/error.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,13 @@ pub enum IndexeddbMediaStoreError {
4242

4343
impl From<IndexeddbMediaStoreError> for MediaStoreError {
4444
fn from(value: IndexeddbMediaStoreError) -> Self {
45-
Self::Backend(Box::new(value))
45+
use IndexeddbMediaStoreError::*;
46+
47+
match value {
48+
DomException { .. } => Self::InvalidData { details: value.to_string() },
49+
Transaction(inner) => inner.into(),
50+
MemoryStore(error) => error,
51+
}
4652
}
4753
}
4854

crates/matrix-sdk-indexeddb/src/media_store/migrations.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ use indexed_db_futures::{
1818
};
1919
use thiserror::Error;
2020
use wasm_bindgen::JsValue;
21-
use web_sys::{DomException, IdbIndexParameters};
21+
use web_sys::DomException;
2222

2323
/// The current version and keys used in the database.
2424
pub mod current {

crates/matrix-sdk-indexeddb/src/media_store/mod.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License
1414

15+
#![allow(unused)]
16+
1517
mod builder;
1618
mod error;
1719
mod migrations;
@@ -20,6 +22,8 @@ mod transaction;
2022
mod types;
2123
use std::{rc::Rc, time::Duration};
2224

25+
pub use builder::IndexeddbMediaStoreBuilder;
26+
pub use error::IndexeddbMediaStoreError;
2327
use indexed_db_futures::IdbDatabase;
2428
use matrix_sdk_base::{
2529
media::{
@@ -37,7 +41,6 @@ use tracing::instrument;
3741
use web_sys::IdbTransactionMode;
3842

3943
use crate::media_store::{
40-
builder::IndexeddbMediaStoreBuilder, error::IndexeddbMediaStoreError,
4144
serializer::traits::Indexed, transaction::IndexeddbMediaStoreTransaction, types::Lease,
4245
};
4346

@@ -327,7 +330,7 @@ impl MediaStoreInner for IndexeddbMediaStore {
327330
}
328331
}
329332

330-
#[cfg(test)]
333+
#[cfg(all(test, target_family = "wasm"))]
331334
mod tests {
332335
use matrix_sdk_base::{
333336
media::store::{MediaStore, MediaStoreError},
@@ -345,7 +348,7 @@ mod tests {
345348

346349
async fn get_media_store() -> Result<IndexeddbMediaStore, MediaStoreError> {
347350
let name = format!("test-media-store-{}", Uuid::new_v4().as_hyphenated());
348-
Ok(IndexeddbMediaStore::builder().build().await?)
351+
Ok(IndexeddbMediaStore::builder().database_name(name).build().await?)
349352
}
350353

351354
#[cfg(target_family = "wasm")]
@@ -362,7 +365,7 @@ mod tests {
362365

363366
async fn get_media_store() -> Result<IndexeddbMediaStore, MediaStoreError> {
364367
let name = format!("test-media-store-{}", Uuid::new_v4().as_hyphenated());
365-
Ok(IndexeddbMediaStore::builder().build().await?)
368+
Ok(IndexeddbMediaStore::builder().database_name(name).build().await?)
366369
}
367370

368371
#[cfg(target_family = "wasm")]

crates/matrix-sdk-indexeddb/src/media_store/serializer/mod.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,14 @@
1313
// limitations under the License
1414

1515
use gloo_utils::format::JsValueSerdeExt;
16-
use matrix_sdk_crypto::CryptoStoreError;
17-
use ruma::RoomId;
1816
use serde::{de::DeserializeOwned, Serialize};
1917
use thiserror::Error;
2018
use wasm_bindgen::JsValue;
2119
use web_sys::IdbKeyRange;
2220

2321
use crate::{
2422
media_store::serializer::{
25-
traits::{Indexed, IndexedKey, IndexedKeyBounds, IndexedKeyComponentBounds},
23+
traits::{Indexed, IndexedKey},
2624
types::IndexedKeyRange,
2725
},
2826
serializer::IndexeddbSerializer,

crates/matrix-sdk-indexeddb/src/media_store/serializer/traits.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License
1414

15-
use ruma::RoomId;
16-
1715
use crate::serializer::IndexeddbSerializer;
1816

1917
/// A conversion trait for preparing high-level types into indexed types

crates/matrix-sdk-indexeddb/src/media_store/serializer/types.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -329,7 +329,7 @@ impl Indexed for MediaRetentionPolicy {
329329
impl IndexedKey<MediaRetentionPolicy> for IndexedCoreIdKey {
330330
type KeyComponents<'a> = ();
331331

332-
fn encode(components: Self::KeyComponents<'_>, serializer: &IndexeddbSerializer) -> Self {
332+
fn encode(_components: Self::KeyComponents<'_>, serializer: &IndexeddbSerializer) -> Self {
333333
serializer.encode_key_as_string(keys::CORE, keys::MEDIA_RETENTION_POLICY_KEY)
334334
}
335335
}

crates/matrix-sdk-indexeddb/src/media_store/transaction.rs

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,7 @@
1313
// limitations under the License
1414

1515
use indexed_db_futures::{prelude::IdbTransaction, IdbQuerySource};
16-
use matrix_sdk_base::{
17-
linked_chunk::{ChunkContent, ChunkIdentifier, LinkedChunkId, RawChunk},
18-
media::store::{MediaRetentionPolicy, MediaStoreError},
19-
};
16+
use matrix_sdk_base::media::store::{MediaRetentionPolicy, MediaStoreError};
2017
use serde::{
2118
de::{DeserializeOwned, Error},
2219
Serialize,
@@ -25,13 +22,9 @@ use thiserror::Error;
2522
use web_sys::IdbCursorDirection;
2623

2724
use crate::media_store::{
28-
error::{AsyncErrorDeps, IndexeddbMediaStoreError},
29-
migrations::v1::keys,
25+
error::AsyncErrorDeps,
3026
serializer::{
31-
traits::{
32-
Indexed, IndexedKey, IndexedKeyBounds, IndexedKeyComponentBounds,
33-
IndexedPrefixKeyBounds, IndexedPrefixKeyComponentBounds,
34-
},
27+
traits::{Indexed, IndexedKey},
3528
types::{IndexedCoreIdKey, IndexedKeyRange, IndexedLeaseIdKey},
3629
IndexeddbMediaStoreSerializer,
3730
},

crates/matrix-sdk-indexeddb/src/media_store/types.rs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,7 @@
1414

1515
use std::time::Duration;
1616

17-
use matrix_sdk_base::{
18-
deserialized_responses::TimelineEvent,
19-
linked_chunk::{ChunkIdentifier, LinkedChunkId, OwnedLinkedChunkId},
20-
media::{store::IgnoreMediaRetentionPolicy, MediaRequestParameters},
21-
};
22-
use ruma::{OwnedEventId, OwnedRoomId, RoomId};
17+
use matrix_sdk_base::media::{store::IgnoreMediaRetentionPolicy, MediaRequestParameters};
2318
use serde::{Deserialize, Serialize};
2419

2520
/// Representation of a time-based lock on the entire

0 commit comments

Comments
 (0)