· 4 years ago · Jan 11, 2021, 04:42 PM
1 private static final String ASTERISK = "*";
2 private static final String COLON = ":";
3
4 public static String generate(String projectID, String version, List args, String secretKey) {
5
6 List<String> parts = new ArrayList<>();
7 parts.add(projectID);
8 parts.add(version);
9
10 for (Object obj : args) {
11 if (obj instanceof List) {
12 List internalParams = new ArrayList<>();
13 internalParams.addAll((List)obj);
14 parts.add(String.join(COLON, internalParams));
15 } else {
16 parts.add(obj.toString());
17 }
18 }
19
20 parts.add(secretKey);
21
22 String preHashedSignature = String.join(ASTERISK, parts);
23 System.out.println(preHashedSignature);
24 return preHashedSignature;
25 }