@@ -13,7 +13,7 @@ use crate::{
13
13
config:: Config ,
14
14
pd:: { PdClient , PdRpcClient } ,
15
15
raw:: lowering:: * ,
16
- request:: { request_codec:: RequestCodec , Collect , CollectSingle , Plan } ,
16
+ request:: { request_codec:: RawCodec , Collect , CollectSingle , Plan } ,
17
17
Backoff , BoundRange , ColumnFamily , Key , KvPair , Result , Value ,
18
18
} ;
19
19
@@ -33,10 +33,10 @@ pub struct Client<C, PdC: PdClient = PdRpcClient<C>> {
33
33
/// Whether to use the [`atomic mode`](Client::with_atomic_for_cas).
34
34
atomic : bool ,
35
35
logger : Logger ,
36
- _phantom : std :: marker :: PhantomData < C > ,
36
+ _phantom : PhantomData < C > ,
37
37
}
38
38
39
- impl < C : RequestCodec > Client < C , PdRpcClient < C > > {
39
+ impl < C : RawCodec > Client < C , PdRpcClient < C > > {
40
40
/// Create a raw [`Client`] and connect to the TiKV cluster.
41
41
///
42
42
/// Because TiKV is managed by a [PD](https://github.com/pingcap/pd/) cluster, the endpoints for
@@ -48,8 +48,11 @@ impl<C: RequestCodec> Client<C, PdRpcClient<C>> {
48
48
/// ```rust,no_run
49
49
/// # use tikv_client::RawClient;
50
50
/// # use futures::prelude::*;
51
+ /// use tikv_client::request::request_codec::RawApiV1;
51
52
/// # futures::executor::block_on(async {
52
- /// let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
53
+ /// let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None)
54
+ /// .await
55
+ /// .unwrap();
53
56
/// # });
54
57
/// ```
55
58
pub async fn new < S : Into < String > > (
@@ -72,10 +75,12 @@ impl<C: RequestCodec> Client<C, PdRpcClient<C>> {
72
75
/// # use tikv_client::{Config, RawClient};
73
76
/// # use futures::prelude::*;
74
77
/// # use std::time::Duration;
78
+ /// use tikv_client::request::request_codec::RawApiV1;
75
79
/// # futures::executor::block_on(async {
76
80
/// let client = RawClient::new_with_config(
77
81
/// vec!["192.168.0.100"],
78
82
/// Config::default().with_timeout(Duration::from_secs(60)),
83
+ /// RawApiV1,
79
84
/// None,
80
85
/// )
81
86
/// .await
@@ -126,8 +131,9 @@ impl<C: RequestCodec> Client<C, PdRpcClient<C>> {
126
131
/// # use tikv_client::{Config, RawClient, ColumnFamily};
127
132
/// # use futures::prelude::*;
128
133
/// # use std::convert::TryInto;
134
+ /// use tikv_client::request::request_codec::RawApiV1;
129
135
/// # futures::executor::block_on(async {
130
- /// let client = RawClient::new(vec!["192.168.0.100"], None)
136
+ /// let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None)
131
137
/// .await
132
138
/// .unwrap()
133
139
/// .with_cf(ColumnFamily::Write);
@@ -165,7 +171,7 @@ impl<C: RequestCodec> Client<C, PdRpcClient<C>> {
165
171
}
166
172
}
167
173
168
- impl < C : RequestCodec , PdC : PdClient > Client < C , PdC > {
174
+ impl < C : RawCodec , PdC : PdClient > Client < C , PdC > {
169
175
/// Create a new 'get' request.
170
176
///
171
177
/// Once resolved this request will result in the fetching of the value associated with the
@@ -177,8 +183,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
177
183
/// ```rust,no_run
178
184
/// # use tikv_client::{Value, Config, RawClient};
179
185
/// # use futures::prelude::*;
186
+ /// use tikv_client::request::request_codec::RawApiV1;
180
187
/// # futures::executor::block_on(async {
181
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
188
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
182
189
/// let key = "TiKV".to_owned();
183
190
/// let req = client.get(key);
184
191
/// let result: Option<Value> = req.await.unwrap();
@@ -206,8 +213,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
206
213
/// ```rust,no_run
207
214
/// # use tikv_client::{KvPair, Config, RawClient};
208
215
/// # use futures::prelude::*;
216
+ /// use tikv_client::request::request_codec::RawApiV1;
209
217
/// # futures::executor::block_on(async {
210
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
218
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
211
219
/// let keys = vec!["TiKV".to_owned(), "TiDB".to_owned()];
212
220
/// let req = client.batch_get(keys);
213
221
/// let result: Vec<KvPair> = req.await.unwrap();
@@ -237,8 +245,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
237
245
/// ```rust,no_run
238
246
/// # use tikv_client::{Key, Value, Config, RawClient};
239
247
/// # use futures::prelude::*;
248
+ /// use tikv_client::request::request_codec::RawApiV1;
240
249
/// # futures::executor::block_on(async {
241
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
250
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
242
251
/// let key = "TiKV".to_owned();
243
252
/// let val = "TiKV".to_owned();
244
253
/// let req = client.put(key, val);
@@ -266,8 +275,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
266
275
/// ```rust,no_run
267
276
/// # use tikv_client::{Result, KvPair, Key, Value, Config, RawClient, IntoOwnedRange};
268
277
/// # use futures::prelude::*;
278
+ /// use tikv_client::request::request_codec::RawApiV1;
269
279
/// # futures::executor::block_on(async {
270
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
280
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
271
281
/// let kvpair1 = ("PD".to_owned(), "Go".to_owned());
272
282
/// let kvpair2 = ("TiKV".to_owned(), "Rust".to_owned());
273
283
/// let iterable = vec![kvpair1, kvpair2];
@@ -303,8 +313,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
303
313
/// ```rust,no_run
304
314
/// # use tikv_client::{Key, Config, RawClient};
305
315
/// # use futures::prelude::*;
316
+ /// use tikv_client::request::request_codec::RawApiV1;
306
317
/// # futures::executor::block_on(async {
307
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
318
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
308
319
/// let key = "TiKV".to_owned();
309
320
/// let req = client.delete(key);
310
321
/// let result: () = req.await.unwrap();
@@ -332,8 +343,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
332
343
/// ```rust,no_run
333
344
/// # use tikv_client::{Config, RawClient};
334
345
/// # use futures::prelude::*;
346
+ /// use tikv_client::request::request_codec::RawApiV1;
335
347
/// # futures::executor::block_on(async {
336
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
348
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
337
349
/// let keys = vec!["TiKV".to_owned(), "TiDB".to_owned()];
338
350
/// let req = client.batch_delete(keys);
339
351
/// let result: () = req.await.unwrap();
@@ -360,8 +372,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
360
372
/// ```rust,no_run
361
373
/// # use tikv_client::{Key, Config, RawClient, IntoOwnedRange};
362
374
/// # use futures::prelude::*;
375
+ /// use tikv_client::request::request_codec::RawApiV1;
363
376
/// # futures::executor::block_on(async {
364
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
377
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
365
378
/// let inclusive_range = "TiKV"..="TiDB";
366
379
/// let req = client.delete_range(inclusive_range.into_owned());
367
380
/// let result: () = req.await.unwrap();
@@ -399,8 +412,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
399
412
/// ```rust,no_run
400
413
/// # use tikv_client::{KvPair, Config, RawClient, IntoOwnedRange};
401
414
/// # use futures::prelude::*;
415
+ /// use tikv_client::request::request_codec::RawApiV1;
402
416
/// # futures::executor::block_on(async {
403
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
417
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
404
418
/// let inclusive_range = "TiKV"..="TiDB";
405
419
/// let req = client.scan(inclusive_range.into_owned(), 2);
406
420
/// let result: Vec<KvPair> = req.await.unwrap();
@@ -423,8 +437,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
423
437
/// ```rust,no_run
424
438
/// # use tikv_client::{Key, Config, RawClient, IntoOwnedRange};
425
439
/// # use futures::prelude::*;
440
+ /// use tikv_client::request::request_codec::RawApiV1;
426
441
/// # futures::executor::block_on(async {
427
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
442
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
428
443
/// let inclusive_range = "TiKV"..="TiDB";
429
444
/// let req = client.scan_keys(inclusive_range.into_owned(), 2);
430
445
/// let result: Vec<Key> = req.await.unwrap();
@@ -454,8 +469,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
454
469
/// ```rust,no_run
455
470
/// # use tikv_client::{Key, Config, RawClient, IntoOwnedRange};
456
471
/// # use futures::prelude::*;
472
+ /// use tikv_client::request::request_codec::RawApiV1;
457
473
/// # futures::executor::block_on(async {
458
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
474
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
459
475
/// let inclusive_range1 = "TiDB"..="TiKV";
460
476
/// let inclusive_range2 = "TiKV"..="TiSpark";
461
477
/// let iterable = vec![inclusive_range1.into_owned(), inclusive_range2.into_owned()];
@@ -486,8 +502,9 @@ impl<C: RequestCodec, PdC: PdClient> Client<C, PdC> {
486
502
/// ```rust,no_run
487
503
/// # use tikv_client::{Key, Config, RawClient, IntoOwnedRange};
488
504
/// # use futures::prelude::*;
505
+ /// use tikv_client::request::request_codec::RawApiV1;
489
506
/// # futures::executor::block_on(async {
490
- /// # let client = RawClient::new(vec!["192.168.0.100"], None).await.unwrap();
507
+ /// # let client = RawClient::new(vec!["192.168.0.100"], RawApiV1, None).await.unwrap();
491
508
/// let inclusive_range1 = "TiDB"..="TiKV";
492
509
/// let inclusive_range2 = "TiKV"..="TiSpark";
493
510
/// let iterable = vec![inclusive_range1.into_owned(), inclusive_range2.into_owned()];
@@ -634,6 +651,7 @@ mod tests {
634
651
635
652
use crate :: {
636
653
mock:: { MockKvClient , MockPdClient } ,
654
+ request:: request_codec:: RawApiV1 ,
637
655
Result ,
638
656
} ;
639
657
@@ -669,6 +687,7 @@ mod tests {
669
687
cf : Some ( ColumnFamily :: Default ) ,
670
688
atomic : false ,
671
689
logger,
690
+ _phantom : PhantomData :: < RawApiV1 > ,
672
691
} ;
673
692
let resps = client
674
693
. coprocessor (
0 commit comments