簡単な ThingPoint アプリケーションの実装
ThingPoint の概要 への移動
RAD サーバー エンジンからの要求をリスンし必要なデータを応答する ThingPoint アプリケーションを新規に作成できます。
その ThingPoint アプリケーションには次のコンポーネントが必要です。
- TEMSProvider コンポーネント。RAD サーバー エンジンとの接続をセットアップするために使用します。
- TEMSEdgeService コンポーネント。RAD サーバー エンジンからの要求をリスンするために使用します。
RAD サーバー クライアント アプリケーションには次のコンポーネントが必要です。
- TEMSProvider コンポーネント。RAD サーバー エンジンとの接続をセットアップするために使用します。
- TBackendEndpoint コンポーネント。ThingPoint の特定のリソースにアクセスするために使用します。
このサンプルには、RAD サーバー エンジン(EMS サーバー)が設定および実行されていなければなりません。
目次
ThingPoint アプリケーションの作成
- マルチデバイス アプリケーションを新規作成します。
- Delphi の場合: [ファイル|新規作成|マルチデバイス アプリケーション - Delphi]を選択します。
- C++ の場合: [ファイル|新規作成|マルチデバイス アプリケーション - C++Builder]を選択します。
- [ツール パレット]で TEMSProvider コンポーネントを探してフォームにドロップします。
- オブジェクト インスペクタで、RAD サーバー エンジン(EMS サーバー) パラメータを RAD サーバー エンジンの設定に従って設定します。
- URLHost:
localhost
- URLPort:
8080
- URLProtocol: http
- URLHost:
- [接続のテスト]ボタンをクリックします。 接続が正しくセットアップされていれば、現在の RAD サーバー エンジンを示すメッセージが出力されます。
- [ツール パレット]で TEMSEdgeService コンポーネントを探してフォームにドロップします。
- [オブジェクト インスペクタ]で TEMSEdgeService のパラメータを次のように構成します。
- Provider:
EMSProvider1
- ModuleName:
WinEdge1
- Provider:
- オブジェクト インスペクタで、次の TEMSEdgeService パラメータを設定して、EMS サーバーの要求をリスンするようにします:
- ListenerProtocol:
http
- ListenerService.Host:
localhost
- ListenerService.Port:
8081
- ListenerProtocol:
- アプリケーションをビルドして実行します。 F9 または 実行 をクリックします。
メモ: ThingPoint は、32 ビット Windows、64 ビット Windows、macOS のターゲット プラットフォームでのみ実行できます。
ThingPoint データを取得する RAD サーバー クライアント アプリケーションの作成
- マルチデバイス アプリケーションを新規作成します。
- Delphi の場合: [ファイル|新規作成|マルチデバイス アプリケーション - Delphi]を選択します。
- C++ の場合: [ファイル|新規作成|マルチデバイス アプリケーション - C++Builder]を選択します。
- [ツール パレット]で TEMSProvider コンポーネントを探してフォームにドロップします。
- オブジェクト インスペクタで、RAD サーバー エンジンのパラメータを、RAD サーバー エンジンの設定に従って設定します:
- URLHost:
localhost
- URLPort:
8080
- URLProtocol:
http
- URLHost:
- フォームに TBackendEndpoint コンポーネントをドロップします。
- [オブジェクト インスペクタ]で、ThingPoint リソースを使用するための TBackendEndpoint パラメータを次のように設定します。
- Provider: ドロップダウン リストから、TEMSProvider コンポーネントの名前(
EMSProvider1
)を選択します。 - Resource:
edgemodules/WinEdge1/version
- Resource suffix: このチュートリアルでは空のままにしておきます。
- Method:
rmGET
- Provider: ドロップダウン リストから、TEMSProvider コンポーネントの名前(
応答データをビジュアルにバインドする
- [LiveBinding デザイナ]を開いて、ThingPoint からの応答データをビジュアルにバインドします。[表示|LiveBinding デザイナ]を選択します。
- [LiveBinding デザイナ]で、TBackendEndpoint コンポーネントの Response.JSONText プロパティを右クリックし、[新規コントロールにリンク...]オプションを選択して、応答を新しい TMemo コンポーネントにリンクします。
- フォームに新しい TButton コンポーネントをドロップします。
- [オブジェクト インスペクタ]で、Text プロパティを「
Get ThingPoint Version
」に設定します。
- [オブジェクト インスペクタ]で、Text プロパティを「
- TButton コンポーネントの OnClick イベントを(ダブルクリックして)作成し、以下のコードを追加します。
- Delphi の場合:
procedure TForm1.Button1Click(Sender: TObject); begin BackendEndpoint1.Execute; end;
- C++ の場合:
void __fastcall TForm1::Button1Click(TObject *Sender) { BackendEndpoint1->Execute(); }
- アプリケーションをビルドして実行します。