Skip to content
Aaron edited this page Sep 16, 2018 · 7 revisions

This SDK is used for building a node hierarchy (configuration database) and exposing it via the DSA protocol.

Key objectives:

  • Pluggable architecture:
    • Protocol independence. Primarily to support DSA V1 and V2 but also has to model remote systems such as device fieldbuses and web services.
    • Transport independence. Websockets, plain sockets, http, and whatever else comes along.
  • Support multiple Java links in the same process.
  • Support JDK 1.6 for Distech Controls.
  • Support very large configuration databases (100K+ points).
    • It has to be memory efficient.
  • Support poll on demand whenever possible.
  • 3rd party library independence. Some environments such as Niagara provide transport libraries while others do not. SLF4J and Netty were explicitly bound to the original SDK but can not be used in Niagara because of it's very strict Security Manager.
Clone this wiki locally