Promise interface can be implement with JavaScript shim. AFAIK, the Promise implementation(C++) in Blink is not doing JNI. So Java part can not use it right now. So the pre-condition is to add add Promise support to Java. @yongsheng please correct me if I'm wrong.

Suppose I'm right, I'd like suggest to remove this JavaScript shim when the pre-condition is achieved in future PR.