Querying Encryption Tasks

Notes

  • You can query encryption tasks by task ID, task status, time range, page number, or compound query.
  • In the query results, if the page number and maximum number of displayed records are not specified, but the number of records is greater than 10, 10 records are displayed by default on each page.

Query by Task ID

1
2
3
4
5
6
7
8
// A maximum of 10 task IDs are supported.
QueryEncryptRequest queryEncryptRequest = new QueryEncryptRequest();
queryEncryptRequest .setTaskIds(new String[]{"1234","2345","3456"});

// Send a request to MPC.
QueryEncryptResponse rsp = mpcClient.queryEncryptTask(queryEncryptRequest);
// Return a message.
System.out.println(new Gson().toJson(rsp));

Query by Page Number

1
2
3
4
5
6
7
8
// Set the page number and number of records on each page.
QueryEncryptRequest queryEncryptRequest = new QueryEncryptRequest();
queryEncryptRequest.setPage(1);
queryEncryptRequest.setSize(10);
// Send a request to MPC.
QueryEncryptResponse rsp = mpcClient.queryEncryptTask(queryEncryptRequest);
// Return a message.
System.out.println(new Gson().toJson(rsp ));

Query by Time Range

1
2
3
4
5
6
7
8
// Set the start time and end time.
QueryEncryptRequest queryEncryptRequest = new QueryEncryptRequest();
queryEncryptRequest.setStartTime("20180520131400");
queryEncryptRequest.setEndTime("20180520141300");
// Send a request to MPC.
QueryEncryptResponse rsp = mpcClient.queryEncryptTask(queryEncryptRequest);
// Return a message.
System.out.println(new Gson().toJson(rsp));

Query by Task Status

1
2
3
4
5
6
7
// Set the task status.
QueryEncryptRequest queryEncryptRequest = new QueryEncryptRequest();
queryEncryptRequest.setStatus(QueryEncryptRequest.STATUS_SUCCEEDED);
// Send a request to MPC.
QueryEncryptResponse rsp = mpcClient.queryEncryptTask(queryEncryptRequest);
// Return a message.
System.out.println(new Gson().toJson(rsp));

Compound Query

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// Set the following parameters:
QueryEncryptRequest queryEncryptRequest = new QueryEncryptRequest();
queryEncryptRequest.setPage(1);
queryEncryptRequest.setSize(10);
queryEncryptRequest.setStartTime("20180520131400");
quequeryEncryptRequest.setEndTime("20180520141300");
queryEncryptRequest.setStatus(QueryEncryptRequest.STATUS_SUCCEEDED);
// Send a request to MPC.
QueryEncryptResponse rsp = mpcClient.queryEncryptTask(queryEncryptRequest);
// Return a message.
System.out.println(new Gson().toJson(rsp));

Full Code

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import com.google.gson.Gson;
import com.huawei.mpc.client.ClientConfig;
import com.huawei.mpc.client.MpcClient;
import com.huawei.mpc.client.MpcConfig;
import com.huawei.mpc.model.encrypt.QueryEncryptRequest;
import com.huawei.mpc.model.encrypt.QueryEncryptResponse;
// Set the method for constructing MPC configuration items.
MpcConfig mpcConfig = new MpcConfig();

// Mandatory. Set the endpoint of MPC. For details, see section "Obtaining Key Parameters."
mpcConfig.setEndPoint(endPoint);
// Mandatory. Set the user's project ID. For details, see section "Obtaining Key Parameters."
mpcConfig.setProjectId(projectId);

// Mandatory. Set the SK. For details, see section "Obtaining Key Parameters."
mpcConfig.setSk(sk);

// Mandatory. Set the AK. For details, see section "Obtaining Key Parameters."
mpcConfig.setAk(ak);
       
/*if you need proxy*/
// Optional. Set the proxy if necessary.
/*
ClientConfig clientConfig = new ClientConfig();
// Set the IP address of the proxy server.
clientConfig.setProxyHost(proxyHost);
// Set the port number of the proxy server.
clientConfig.setProxyPort(Integer.parseInt(proxyPort));
// Set the username for accessing the proxy server.
clientConfig.setProxyUserName(proxyUserName);
// Set the password for accessing the proxy server.
clientConfig.setProxyPassword(proxyPassword);
*/


// MPC construction method
MpcClient mpcClient = new MpcClient(mpcConfig);


// Set request parameters.
QueryEncryptRequest queryEncryptRequest = new QueryEncryptRequest();

// 1. Query by task ID. A maximum of 10 task IDs are supported.
queryEncryptRequest.setTaskIds(new String[]{"1234","2345","3456"});

// 2. Query by page number
// queryEncryptRequest.setPage(1);
// queryEncryptRequest.setSize(10);

// 3. Query by time range
// queryEncryptRequest.setStartTime("20180520131400");
// queryEncryptRequest.setEndTime("20180520141300");

// 4. Query by task status
// queryEncryptRequest.setStatus(QueryEncryptRequest.STATUS_SUCCEEDED);

// 5. Compound query
// queryEncryptRequest.setPage(1);
// queryEncryptRequest.setSize(10);
// queryEncryptRequest.setStartTime("20180520131400");
// queryEncryptRequest.setEndTime("20180520141300");
// queryEncryptRequest.setStatus(QueryEncryptRequest.STATUS_SUCCEEDED);

// Send a request to MPC.
QueryEncryptResponse rsp = mpcClient.queryEncryptTask(queryEncryptRequest);
// Return a message.
System.out.println(new Gson().toJson(rsp));