@@ -59,6 +59,8 @@ pub async fn get_db<P: AsRef<Path>>(path: P) -> &'static Storage {
59
59
DB . get_or_init ( || Storage :: new ( path) ) . await
60
60
}
61
61
62
+ const STORE_NAME : & str = "main-store" ;
63
+
62
64
#[ derive( Clone ) ]
63
65
pub struct Storage {
64
66
chan : tokio:: sync:: mpsc:: Sender < Request > ,
@@ -67,15 +69,14 @@ pub struct Storage {
67
69
impl Storage {
68
70
pub async fn new < P : AsRef < Path > > ( path : P ) -> Self {
69
71
let factory = Factory :: new ( ) . unwrap ( ) ;
70
- let mut open_request = factory. open ( "network" , Some ( 1 ) ) . unwrap ( ) ;
71
- let store_name = path. as_ref ( ) . to_str ( ) . unwrap ( ) . to_owned ( ) ;
72
- let store_name_clone = store_name. clone ( ) ;
72
+ let database_name = path. as_ref ( ) . to_str ( ) . unwrap ( ) . to_owned ( ) ;
73
+ let mut open_request = factory. open ( & database_name, Some ( 1 ) ) . unwrap ( ) ;
73
74
open_request. on_upgrade_needed ( move |event| {
74
75
let database = event. database ( ) . unwrap ( ) ;
75
76
let store_params = ObjectStoreParams :: new ( ) ;
76
77
77
78
let store = database
78
- . create_object_store ( & store_name_clone , store_params)
79
+ . create_object_store ( STORE_NAME , store_params)
79
80
. unwrap ( ) ;
80
81
let mut index_params = IndexParams :: new ( ) ;
81
82
index_params. unique ( true ) ;
@@ -92,9 +93,9 @@ impl Storage {
92
93
match request. cmd {
93
94
CommandRequest :: Read { key } => {
94
95
let tran = db
95
- . transaction ( & [ & store_name ] , TransactionMode :: ReadOnly )
96
+ . transaction ( & [ STORE_NAME ] , TransactionMode :: ReadOnly )
96
97
. unwrap ( ) ;
97
- let store = tran. object_store ( & store_name ) . unwrap ( ) ;
98
+ let store = tran. object_store ( STORE_NAME ) . unwrap ( ) ;
98
99
let key = serde_wasm_bindgen:: to_value ( & key) . unwrap ( ) ;
99
100
let value = store
100
101
. get ( key)
@@ -107,9 +108,9 @@ impl Storage {
107
108
}
108
109
CommandRequest :: Put { kv } => {
109
110
let tran = db
110
- . transaction ( & [ & store_name ] , TransactionMode :: ReadWrite )
111
+ . transaction ( & [ STORE_NAME ] , TransactionMode :: ReadWrite )
111
112
. unwrap ( ) ;
112
- let store = tran. object_store ( & store_name ) . unwrap ( ) ;
113
+ let store = tran. object_store ( STORE_NAME ) . unwrap ( ) ;
113
114
114
115
let key = serde_wasm_bindgen:: to_value ( & kv. key ) . unwrap ( ) ;
115
116
let value = serde_wasm_bindgen:: to_value ( & kv) . unwrap ( ) ;
0 commit comments