refactor create dht value
This commit is contained in:
		| @@ -1068,22 +1068,24 @@ impl VeilidAPI { | ||||
|         let routing_table = netman.routing_table(); | ||||
|         let crypto = self.crypto()?; | ||||
|  | ||||
|         let csv = get_debug_argument_at( | ||||
|             &args, | ||||
|             1, | ||||
|             "debug_record_create", | ||||
|             "kind", | ||||
|             get_crypto_system_version(crypto.clone()), | ||||
|         ) | ||||
|         .unwrap_or_else(|_| crypto.best()); | ||||
|         let schema = get_debug_argument_at( | ||||
|             &args, | ||||
|             2, | ||||
|             1, | ||||
|             "debug_record_create", | ||||
|             "dht_schema", | ||||
|             get_dht_schema, | ||||
|         ) | ||||
|         .unwrap_or_else(|_| DHTSchema::dflt(1)); | ||||
|  | ||||
|         let csv = get_debug_argument_at( | ||||
|             &args, | ||||
|             2, | ||||
|             "debug_record_create", | ||||
|             "kind", | ||||
|             get_crypto_system_version(crypto.clone()), | ||||
|         ) | ||||
|         .unwrap_or_else(|_| crypto.best()); | ||||
|  | ||||
|         let ss = get_debug_argument_at( | ||||
|             &args, | ||||
|             3, | ||||
| @@ -1106,7 +1108,7 @@ impl VeilidAPI { | ||||
|         }; | ||||
|  | ||||
|         // Do a record get | ||||
|         let record = match rc.create_dht_record(csv.kind(), schema).await { | ||||
|         let record = match rc.create_dht_record(schema, Some(csv.kind())).await { | ||||
|             Err(e) => return Ok(format!("Can't open DHT record: {}", e)), | ||||
|             Ok(v) => v, | ||||
|         }; | ||||
| @@ -1348,7 +1350,7 @@ route allocate [ord|*ord] [rel] [<count>] [in|out] | ||||
|       test <route> | ||||
| record list <local|remote> | ||||
|        purge <local|remote> [bytes] | ||||
|        create <cryptokind> <dhtschema> <safety> | ||||
|        create <dhtschema> [<cryptokind> [<safety>]] | ||||
|        set <key>[+<safety>] <subkey> <writer> <data>  | ||||
|        get <key>[+<safety>] <subkey> [force] | ||||
|        delete <key> | ||||
|   | ||||
| @@ -277,10 +277,10 @@ impl JsonRequestProcessor { | ||||
|                     ), | ||||
|                 } | ||||
|             } | ||||
|             RoutingContextRequestOp::CreateDhtRecord { kind, schema } => { | ||||
|             RoutingContextRequestOp::CreateDhtRecord { schema, kind } => { | ||||
|                 RoutingContextResponseOp::CreateDhtRecord { | ||||
|                     result: to_json_api_result( | ||||
|                         routing_context.create_dht_record(kind, schema).await, | ||||
|                         routing_context.create_dht_record(schema, kind).await, | ||||
|                     ), | ||||
|                 } | ||||
|             } | ||||
|   | ||||
| @@ -38,9 +38,9 @@ pub enum RoutingContextRequestOp { | ||||
|         message: Vec<u8>, | ||||
|     }, | ||||
|     CreateDhtRecord { | ||||
|         #[schemars(with = "String")] | ||||
|         kind: CryptoKind, | ||||
|         schema: DHTSchema, | ||||
|         #[schemars(with = "Option<String>")] | ||||
|         kind: Option<CryptoKind>, | ||||
|     }, | ||||
|     OpenDhtRecord { | ||||
|         #[schemars(with = "String")] | ||||
|   | ||||
| @@ -195,9 +195,10 @@ impl RoutingContext { | ||||
|     /// Returns the newly allocated DHT record's key if successful. The records is considered 'open' after the create operation succeeds. | ||||
|     pub async fn create_dht_record( | ||||
|         &self, | ||||
|         kind: CryptoKind, | ||||
|         schema: DHTSchema, | ||||
|         kind: Option<CryptoKind>, | ||||
|     ) -> VeilidAPIResult<DHTRecordDescriptor> { | ||||
|         let kind = kind.unwrap_or(best_crypto_kind()); | ||||
|         let storage_manager = self.api.storage_manager()?; | ||||
|         storage_manager | ||||
|             .create_record(kind, schema, self.unlocked_inner.safety_selection) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user