Interface IPropertyProvider

All Superinterfaces:
INamedObject, IPersistable
All Known Implementing Classes:
DataTableThing, DataThing, DataThingWithEvents, FileRepositoryThing, LogRetrievalStrategy, NotificationHandler, RemoteThing, RemoteThingWithFileTransfer, RemoteThingWithTunnels, RemoteThingWithTunnelsAndFileTransfer, ReportingStrategy, SecurityMonitorThing, StreamThing, Thing, User

@ThingworxExtensionApiClass(since={6,6}) public interface IPropertyProvider extends IPersistable
The IPropertyProvider interface indicates the implementor is capable of persisting a set of properties on the Platform, as well as defining the methods the Platform requires in order to interact with these properties.
  • Method Details

    • getPropertyValue

      @ThingworxExtensionApiMethod(since={6,6}) IPrimitiveType getPropertyValue(String propName) throws Exception


      Returns the value currently assigned to the specified property.
      Parameters:
      propName - the name of the property to retrieve the value of
      Returns:
      the property's current value
      Throws:
      Exception - if propName is null, the user is unauthorized (when applicable), or an error occurs while attempting to read from the property
    • setPropertyValue

      @ThingworxExtensionApiMethod(since={6,6}) void setPropertyValue(String propertyName, IPrimitiveType value) throws Exception
      Parameters:
      propertyName - the name of the property that is being modified
      value - the value to assign to the property
      Throws:
      Exception - If an error occurs

      Assigns the provided value to the specified property.
      Exception - if propertyName is null, the user is unauthorized (when applicable), the specified property does not exist, or an error occurs when attempting to modify the property
    • getInstancePropertyDefinitions

      @ThingworxExtensionApiMethod(since={6,6}) PropertyDefinitionCollection getInstancePropertyDefinitions()


      Returns a collection containing all property definitions belonging to this instance.
      Returns:
      a collection of property definitions
    • getInstancePropertyDefinition

      @ThingworxExtensionApiMethod(since={6,6}) PropertyDefinition getInstancePropertyDefinition(String name)


      Returns the specified property definition for this instance.
      Parameters:
      name - the name of the property
      Returns:
      the definition of the property
    • getInstancePropertyDefinitionIfVisible

      @ThingworxExtensionApiMethod(since={6,6}) PropertyDefinition getInstancePropertyDefinitionIfVisible(String name) throws Exception


      Returns the specified property definition for this instance if visible.
      Parameters:
      name - the name of the property
      Returns:
      the definition of the property
      Throws:
      Exception - if the user does not have permission to access the property
    • getPropertyValuesAsInfoTable

      @ThingworxExtensionApiMethod(since={6,6}) InfoTable getPropertyValuesAsInfoTable() throws Exception


      Returns an InfoTable containing a list of the properties belonging to this instance and their values.
      Returns:
      an InfoTable of property names and their associated values
      Throws:
      Exception - if the user does not have permission to access the properties (when applicable), or an error occurs when attempting to read the property values
    • hasProperty

      @ThingworxExtensionApiMethod(since={6,6}) boolean hasProperty(String propName)


      Returns true if there exists a property with the specified name. Property names are case-sensitive.
      Parameters:
      propName - the property name to check
      Returns:
      true if the specified property exists
    • hasPropertyAndIsVisible

      @ThingworxExtensionApiMethod(since={6,6}) boolean hasPropertyAndIsVisible(String propName) throws Exception


      Returns true if there exists a property with the specified name and is visible to the user. Property names are case-sensitive.
      Parameters:
      propName - the property name to check
      Returns:
      true if the specified property exists and is visible
      Throws:
      Exception - if the user does not have permission to access the property
    • getPropertyType

      @ThingworxExtensionApiMethod(since={6,6}) BaseTypes getPropertyType(String propName)


      Returns the base type defined in the specified property's definition.
      Parameters:
      propName - the name of the property
      Returns:
      the BaseTypes entry corresponding to the property type