1 /*
2  * Hunt - A redis client library for D programming language.
3  *
4  * Copyright (C) 2018-2019 HuntLabs
5  *
6  * Website: https://www.huntlabs.net/
7  *
8  * Licensed under the Apache-2.0 License.
9  *
10  */
11 
12 module hunt.redis.commands.AdvancedBinaryRedisCommands;
13 
14 import hunt.collection.List;
15 
16 import hunt.redis.params.MigrateParams;
17 import hunt.redis.params.ClientKillParams;
18 import hunt.Long;
19 
20 interface AdvancedBinaryRedisCommands {
21 
22     List!(const(ubyte)[]) configGet(const(ubyte)[] pattern);
23 
24     const(ubyte)[] configSet(const(ubyte)[] parameter, const(ubyte)[] value);
25 
26     string slowlogReset();
27 
28     Long slowlogLen();
29 
30     List!(const(ubyte)[]) slowlogGetBinary();
31 
32     List!(const(ubyte)[]) slowlogGetBinary(long entries);
33 
34     Long objectRefcount(const(ubyte)[] key);
35 
36     const(ubyte)[] objectEncoding(const(ubyte)[] key);
37 
38     Long objectIdletime(const(ubyte)[] key);
39 
40     string migrate(string host, int port, const(ubyte)[] key, int destinationDB, int timeout);
41 
42     string migrate(string host, int port, int destinationDB, int timeout,
43             MigrateParams params, const(ubyte)[][] keys...);
44 
45     string clientKill(const(ubyte)[] ipPort);
46 
47     string clientKill(string ip, int port);
48 
49     Long clientKill(ClientKillParams params);
50 
51     const(ubyte)[] clientGetnameBinary();
52 
53     const(ubyte)[] clientListBinary();
54 
55     string clientSetname(const(ubyte)[] name);
56 
57     const(ubyte)[] memoryDoctorBinary();
58 }