Skip to content

Object Model

Aaron edited this page Sep 16, 2018 · 8 revisions

Core Types

This describes the object model is used to create a DSLink configuration database. A configuration database is a hierarchy of nodes, values, actions and topics that encapsulate the unique functionality of any given DSLink.

DSIObject

Everything mounted in the node configuration database implements the DSIObject interface. The DSIObject implementations are:

  • DSNode
  • DSIValue
  • DSAction
  • DSTopic

DSNode

DSNode is the primary organizational unit of the model. It can contain all of the other object types including other DSNodes. Almost all custom link functionality will be implemented in DSNode subclasses.

DSIValue

This interface is used for data (Strings, ints, timestamps, etc). There is a special implementation of DSIValue called DSElement. All DSElements are primitive types in the DSA model.

DSAction

Actions expose functions to DSA.

DSTopic

Topics can be subscribed to for event notification. Topics are internal to a link and have not correspondence to DSA.

Clone this wiki locally