プロダクション構成
いよいよ最後の手順です。今まで作ったコンポーネントをプロダクションに組み込んでいきます。管理ポータルで、[Interoperability]→[構成]→[プロダクション]を選んでください(次図)。
ビジネス・オペレーションの追加
ビジネス・オペレーションをプロダクションに追加します。上の図の赤で囲った部分、”+”マークをクリックしてください。
そうすると次の図のような画面が表示されるので、オペレーションクラス名には”DriveDemo.Operation.CarUpdateOperation”、オペレーション名に”CarOperation”と入力、有効にチェックを入れて「OK」を押します。
次の図のように、プロダクションにビジネス・オペレーション”CarOperation”が追加されました。
同様の操作を、DriveDemo.Operation.CheckDriveOperationに対しても行ってください。
さらに、発生したイベントをMQTT BrokerにPublishするビジネス・オペレーションも追加します。このオペレーションは、連載第3回で紹介した、Javaビジネス・ホストです。
管理ポータルの[Interoperability]→[構築]→[Javaビジネス・ホスト]を選択します。次の図のように、Javaビジネス・ホストの生成画面が表示されるので、画面左側、アクティブなプロダクションで”DriveDemo.Production”を選択します。プロダクションを起動するダイアログが出たらOKを押してください。
そして、画面中央の設定で、Jarのファイルパスに”/projects/srcs/java/lib/IRIS-MQTT-Client.jar”を選択、Javaのクラス名に”com.intersystems.drivedemo.MqttBO(ビジネス・オペレーション)”を選択、デフォルト認証情報に”SuperUser”を入力し、「生成」ボタンを押します。
次に、プロダクション構成の画面に戻って、ビジネス・オペレーションの追加ボタン”+”を押し、次の図のように、オペレーションクラスに”JBH.Com.Intersystems.Drivedemo.MqttBO”を選択、オペレーション名に”MQTTOut”と入力し、有効にするをチェックして「OK」を押します。
プロダクション構成の画面に戻り、ビジネス・オペレーション”MQTTOut”を選択します。そうすると、画面右側に設定項目が表示されます。そこで、「追加の設定」を展開し、
- MQTTBroker: tcp://mqttbroker:1883
- MQTTClientName: IRISClientOut
- MQTTTopicRoot: DriveDemo/Event
- LogFile: /projects/logs/MQTTBO.log
と各項目に入力してください(次図)。
最後にプロダクションを更新します。「更新」ボタンを押してみてください(うまくいかない場合は、「停止」→「開始」の順にボタンを押して、プロダクションを再起動します)。
ビジネス・プロセスの追加
次に、ビジネス・プロセスを追加しましょう。追加するのは、今回の連載の初めに定義したCheckDriveProcessです。
管理ポータルのプロダクション構成の画面から、ビジネス・プロセス追加の”+”マークをクリックします。そうすると次の図のような画面が表示されるので、ビジネス・プロセス・クラスに”DriveDemo.Process.DriveCheckProcess”を選択、ビジネス・プロセス名に”DriveCheckProcess”と入力、有効にチェックを入れ、「OK」ボタンを押します。
以上の作業で、プロダクション全体は次の図のようになります。管理ポータルのプロダクション構成を確認してください。
ビジネス・ルールの設定
プロダクション構成の仕上げに、ビジネス・プロセス”RoutingProcess”が参照するビジネス・ルールの設定を行います。
RoutingProcessは第3回の連載でプロダクションに追加しましたが、参照するルールは自動生成したものを暫定的に設定しました。ここで、前回作成したビジネス・ルールを参照するように変更します。
管理ポータルのプロダクション構成の画面で、”RoutingProcess”をクリックします。そうすると、右側のパネルに設定項目が表示されます。そこで、[基本の設定]→[ビジネス・ルール名]に”DriveDemo.DemoProcessRoutingRule”を選択し、「適用」ボタンを押します(次図)。
以上でプロダクションが完成しました。