Skip To Content

使用自定义组件扩展

可以使用 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 Gallery 中提供的加载项是否提供了您的用例所必需的功能。 有关两者的详细信息,请参阅使用开箱即用型组件扩展使用加载项管理器

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 开发自定义适配器。 例如,如果数据提供商通过套接字连接以十六进制字节流的形式发送事件数据,则可以开发能够理解如何将原始字节流转换为常规数据类型(如整型或字符串)的自定义适配器。

开发自定义传输

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 开发自定义处理器。 例如,接收事件记录的处理器通常不追踪最近已处理或将要处理的事件记录中包含的属性值。 如果您需要一个处理器来维护其接收到的事件记录中的属性值缓存,并定期报告属性值的最小值、最大值和平均值以作为某个时间段的统计信息,则可以开发自定义处理器来执行事件聚合和统计计算。