Dependency Scanner
The dependency scanner uses built-in knowledge of ThingWorx entities and their entity-specific characteristics to locate references to other ThingWorx entities. It takes a set of all project entities and then scans through their characteristics to identify references that are not within the project being processed. When an external reference is found, one of the following happens:
If it is a system object, it is not marked as a dependency.
If it is an entity that does not have a project assignment, it is a candidate to be included in the current project. Such entities are also scanned since they are now a potential member of project under processing.
If it is an entity that belongs to an extension, the extension is listed as a dependency.
If it is an entity that belongs to another project (which is not part of the extension), the project is listed as a dependency.
Properties, Services, Events, Subscriptions are examples of the entity-specific characteristics that are scanned. A service code is scanned and any direct references to entities (such as Things[“Thing1”]) are captured as dependencies. However, anything built using a composition of strings is not captured. Note that there can be situations where the dependency scanner will fail to identify dependencies.
The following table lists the information for each of the entity-specific characteristics that is scanned for dependencies.
Entity Characteristic
Information Scanned
Properties
Value, default value, locally bound entity, DataShape (if type is Infotable), ThingTemplate, and ThingShape aspects (if type is THINGNAME)
Services
Default value of “result type”, “parameter fields”, DataShape (if type is Infotable), ThingTemplate, and ThingShape aspects (if type is THINGNAME). JavaScript code with direct references (for instance, Things[“Thing1])
Events
DataShape
Subscriptions
Source. JavaScript code with direct references (for instance, Things[“Thing1])
Configuration Table
DataShape
Visibility Permission
Organization
Runtime Permission
Users and groups
DataShape Field Definition
Default value, DataShape (if type is Infotable), ThingTemplate and ThingShape aspects (if type is THINGNAME)
Network Hierarchy
Thing Entities
State Information
Style definitions. If custom style definition is using media entities from that custom definition
Style Information
Media entities
Menu Definition
Icon with media entity, Groups in group association
Menu Item
Mashup, group, media entity, and other menu
Dashboard
Gadgets (mashup)
Group Members
User
Organization
Members as User and group
Mashup
Mashup using widgets from extension, mashup using external entities in widget properties, data bindings from entities and entities referred in filter functions
General Information
Entities having attributes with external entity references (for instance, Thing has ThingShape, ValueStream, ThingTemplate)
Was this helpful?