ArcGIS GeoEvent Server SDK で開発したカスタム コンポーネントを使用して、ArcGIS GeoEvent Server の機能を拡張できます。 開発者は GeoEvent Server SDK を使用して、アダプター、トランスポート、プロセッサなどのカスタム コンポーネントを開発することができます。
注意:
アダプターとトランスポートは、コネクタの基本的なコンポーネントです。 アダプターはイベント データのデータ形式を解釈し、トランスポートは指定された通信プロトコルでイベント データを送受信します。
GeoEvent Server SDK には、ライブラリ ファイル、サンプル、Javadoc API リファレンス、および開発者ガイドが含まれています。 また、GeoEvent Server REST API を通じて公開されているパッケージとクラスに関するドキュメントも含まれています。 SDK でカスタム コンポーネントを開発する前に、ArcGIS GeoEvent Manager ですでに構成済みのすぐに使用できるコンポーネントまたは ArcGIS GeoEvent Server ギャラリーで入手可能なアドオンのどちらが用途に必要な機能を備えているかを確認します。 詳細については、「すぐに使用できるコンポーネントを使用して拡張」および「アドオン マネージャーの使用」をご参照ください。
GeoEvent Server SDK のドキュメント
GeoEvent Server SDK には、Java SE 開発キットのセットアップに関するドキュメントや、Apache Maven などの開発ツールが含まれています。 GeoEvent Server のアーキテクチャやカスタム コンポーネントの開発方法に関する情報、および開発作業の開始点として使用できるサンプル コンポーネントが含まれています。
GeoEvent Server SDK とそのドキュメントは、ArcGIS Server のインストール ディレクトリにあります。 デフォルトのインストール ディレクトリは、次のとおりです。
- Windows - <ArcGIS Server installation directory>\GeoEvent\sdk (例: C:\Program Files\ArcGIS\Server\GeoEvent\sdk)
- Linux - <ArcGIS Server installation directory>/GeoEvent/sdk (例: ~/arcgis/server/GeoEvent/sdk)
カスタム アダプターの開発
GeoEvent Server には、汎用 JSON、GeoJSON、Esri フィーチャ JSON、および geoRSS、XML、区切りテキスト形式のコンテンツを解析できるアダプターが含まれています。
GeoEvent Server に付属しているアダプターがニーズに合っていない場合は、GeoEvent Server SDK を使用してカスタム アダプターを開発できます。 たとえば、データ プロバイダーがソケット接続を介してイベント データを 16 進バイトのストリームとして送信している場合は、未処理のバイト ストリームを整数や文字列などの正規のデータ タイプに変換する方法を取り込んだカスタム アダプターを開発できます。
カスタム トランスポートの開発
GeoEvent Server には、通常の REST 要求および応答メッセージをサポートする HTTP トランスポートなどのトランスポートが含まれています。 HTTP 基本認証もサポートされています。 TCP、UDP、SMS、SMTP、XMPP、WebSocket、および Esri フィーチャ サービスを介した通信をサポートする追加のトランスポートも含まれています。
GeoEvent Server に付属しているトランスポートがニーズに合っていない場合は、GeoEvent Server SDK を使用してカスタム トランスポートを開発できます。 たとえば、TCP ソケット接続を介した認証情報の交換といった独自の認証メカニズムを使用したサービスにアクセスする場合、TCP ソケット プロトコルと認証に使用されているメカニズムの両方を理解するカスタムのトランスポートを開発できます。
カスタム プロセッサの開発
GeoEvent Server には、リアルタイム解析の実行に使用できる多くのプロセッサが付属しています。 たとえば、フィールド演算プロセッサを構成して導関数値を計算するか、フィールド エンリッチャー プロセッサを構成して外部ソースからの情報をイベント レコードに結合することができます。
GeoEvent Server に付属しているプロセッサがニーズに合っていない場合は、GeoEvent Server SDK を使用してカスタム プロセッサを開発できます。 たとえば、一般的にイベント レコードを受信するプロセッサは、直近処理された、または処理される予定のイベント レコードに含まれる属性値を追跡しません。 過去に受信したイベント レコードから属性値のキャッシュを保持し、一定期間の属性値の最小、最大、および平均を統計情報として定期的に報告するプロセッサが必要な場合は、イベントの集計と統計情報計算を実行するカスタム プロセッサを開発できます。