PvtServer の引っ越し:REST(7)
ORCA から 受付 CLAIM 情報を受けたときに WebSocket でクライアントに伝える仕組みを作った。
処理の流れ
クライアントは起動時にサーバの WebSocket につないで session を確立しておく → PvtServer は ORCA から CLAIM を受ける → CLAIM を受けた PvtServer は PatientVisitModel に変換して addPvt する → addPvt により PatientVisitModel テーブルが変化すると PatientVisitModelListener が呼ばれる → PatientVisitModelListener は WebSocket のクライアント全員に PatientVisitModel を送るクライアント側
WebSocket につなぐ時に Endpoint を extend したクラスを指定して,そのクラスで pvt を受け取る。- DolphinClientContext
public Session setEndpoint(Endpoint endpoint) { webSocketContainer.connectToServer(endpoint, webSocketUri); } - WatingListImpl
DolphinClientContext.getContext().setEndpoint(new Endpoint(){ @Override public void onOpen(Session session, EndpointConfig config) { session.addMessageHandler(new MessageHandler.Whole() { @Override public void onMessage(String message) { // pvt 処理 }); } });
サーバ側
- PatientVisitModel にリスナをつける。
@Entity @EntityListeners(PatientVisitModelListener.class) @Table(name = "d_patient_visit") public class PatientVisitModel extends InfoModel { : - pvt が変化したら,通知を受けた PatientVisitModelListener から WebSocket クライアントに PatientVisitModel を送る。
« Authorization:REST(6) | トップページ | Client の引っ越し:REST(8) »
「OpenDolphin」カテゴリの記事
- 運用18年目のまとめ(2026.02.07)
- IME on/off の切換 - その5(2026.01.05)
- IME on/off の切換 - その4(2025.12.23)
- IME on/off の切換 - その3(2025.12.20)
- OpenDolphin: Java 25 / WildFly 38 への移行(2025.11.09)


