IT練習ノート

IT関連で調べたこと(実際は嵌ったこと)を書いています。

jsiiの仕組みの確認

github.com

Node.Js上でサーバが立ち上がり、クライアントのJavaと、JSONを用いたプロセス間通信をする。

Client : Java

Server : javascript
> node jsii-runtime.js


JsiiRuntimet.java <-- STDIN/STDOUT protocol --> jsii-runtime.js --> jsii-kernel.js
                       ------ JSON ------

jsiiのjavaライブラリを使う側は、JssObjectを継承したクラスを作成する。

* Class Dependency

JsiiObject --> JsiiEngine --> JsiiRuntime <--> JsiiClient
                                 |
                              ProcessBuilder (Java API)

* Java object method call

JsiiObject#jsiiCall -...-> JsiiClient#callMethod -> JsiiRuntime#reqestResponse

* Library Dependency

Jsii -> Jackson