Interface ManagedTagProvider


  • public interface ManagedTagProvider
    A Managed Tag Provider is one that is managed by outside code- in other words, not one created by the user. This is an easy mechanism for sub systems and module authors to use to expose tag data in cases where it wouldn't be appropriate for the user to either 1) have to create a provider or 2) be allowed to create multiple.
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      void configureTag​(java.lang.String path, BoundPropertySet config)
      Configures the properties of a tag, creating it if necessary.
      default void configureTag​(java.lang.String path, DataType dataType)
      A shortcut for simply configuring the data type of a tag.
      void registerWriteHandler​(java.lang.String path, WriteHandler handler)
      Registers a callback that will be used when a write is attempted against the specified path.
      void removeTag​(java.lang.String path)
      Removes the tag from the provider, and deletes any extensions defined for it.
      void setDeletionHandler​(DeletionHandler handler)
      Registers a tag deletion handler, which enables user deletion of tags.
      void shutdown​(boolean delete)
      Shuts down and removes the provider.
      default void updateValue​(java.lang.String path, java.lang.Object value, QualityCode quality)
      Updates the value of a tag, creating it if necessary.
      void updateValue​(java.lang.String path, java.lang.Object value, QualityCode quality, java.util.Date timestamp)
      Updates the value of a tags with value, quality, and timestamp.
    • Method Detail

      • updateValue

        default void updateValue​(java.lang.String path,
                                 java.lang.Object value,
                                 QualityCode quality)
        Updates the value of a tag, creating it if necessary. Uses the current time for the timestamp.
      • updateValue

        void updateValue​(java.lang.String path,
                         java.lang.Object value,
                         QualityCode quality,
                         java.util.Date timestamp)
        Updates the value of a tags with value, quality, and timestamp. Will create the tag if not already present.
      • configureTag

        void configureTag​(java.lang.String path,
                          BoundPropertySet config)
        Configures the properties of a tag, creating it if necessary.
      • configureTag

        default void configureTag​(java.lang.String path,
                                  DataType dataType)
        A shortcut for simply configuring the data type of a tag.
      • removeTag

        void removeTag​(java.lang.String path)
        Removes the tag from the provider, and deletes any extensions defined for it. Also removes anything under this location.
      • registerWriteHandler

        void registerWriteHandler​(java.lang.String path,
                                  WriteHandler handler)
        Registers a callback that will be used when a write is attempted against the specified path. Only one write handler is allowed per path. If a write handler is not registered for a path, any attempted writes will result in "ReadOnly" errors. Note that other tag settings, such as Permissions, might still prevent writes.
        • The path may end with a wildcard to accept writes for anything under the location (for example "path/to/*").
        • A null/empty path will register the handler for all tags.
        • The most specific write handler is called, and others will not be called.
      • setDeletionHandler

        void setDeletionHandler​(DeletionHandler handler)
        Registers a tag deletion handler, which enables user deletion of tags. If null (or never called), users will not be able to delete tags.
      • shutdown

        void shutdown​(boolean delete)
        Shuts down and removes the provider. If delete is true, will remove all stored data for the provider.