in benchmark/string/host/src/main/java/org/apache/teaclave/javasdk/benchmark/string/host/StringBenchMark.java [72:106]
private void stringBenchMarkImpl(EnclaveBenchmark enclave, String enclaveServiceInstance, String stringOpt) {
StringOperationMetric service = null;
switch (enclaveServiceInstance) {
case "MOCK_IN_JVM":
service = enclave.getMockJVMServiceInstance();
break;
case "MOCK_IN_SVM":
service = enclave.getMockSVMServiceInstance();
break;
case "TEE_SDK":
service = enclave.getTeeSDKServiceInstance();
break;
}
int regexWeight = 5000;
int concatWeight = 50_000;
int splitWeight = 5000;
String regexContext = "abcd_ed123.t12y@haha.com";
String regexPattern = "^[\\w._]+@\\w+\\.[a-zA-Z]+$";
String concatContext = "Hello World!";
String concatPattern = "abc";
String splitContext = "word1, word2 word3@word4?word5.word6";
String splitPattern = "[, ?.@]+";
switch (stringOpt) {
case "regex":
Objects.requireNonNull(service).stringRegex(regexContext, regexPattern, regexWeight);
break;
case "concat":
Objects.requireNonNull(service).stringConcat(concatContext, concatPattern, concatWeight);
break;
case "split":
Objects.requireNonNull(service).stringSplit(splitContext, splitPattern, splitWeight);
break;
}
}