Class DocumentModel


  • public class DocumentModel
    extends java.lang.Object
    Model that represents a json document, but held in memory as so to be editable by the JSON editor.
    • Field Detail

      • VALIDATION_RESULTS

        public static final java.lang.String VALIDATION_RESULTS
        See Also:
        Constant Field Values
      • change

        protected final java.beans.PropertyChangeSupport change
    • Constructor Detail

      • DocumentModel

        public DocumentModel​(java.lang.String json)
      • DocumentModel

        public DocumentModel​(com.inductiveautomation.ignition.common.gson.JsonElement rootElement)
      • DocumentModel

        public DocumentModel​(DocumentNode root)
    • Method Detail

      • getAsJsonTree

        public com.inductiveautomation.ignition.common.gson.JsonElement getAsJsonTree()
      • toJson

        public com.inductiveautomation.ignition.common.gson.JsonElement toJson​(DocumentNode node)
      • encodeValueAsJson

        protected com.inductiveautomation.ignition.common.gson.JsonElement encodeValueAsJson​(DocumentNode node)
      • getSchema

        @Nullable
        public JsonSchema getSchema()
      • onNodeChanged

        protected void onNodeChanged​(java.beans.PropertyChangeEvent event)
        DocumentNodes feed ALL property change events up to the model
      • isKeyEditable

        public boolean isKeyEditable​(DocumentNode node)
      • isValueEditable

        public boolean isValueEditable​(DocumentNode node)
      • addNodeChangeListener

        public void addNodeChangeListener​(NodeChangeListener listener)
      • removeNodeChangeListener

        public boolean removeNodeChangeListener​(NodeChangeListener listener)
      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.beans.PropertyChangeListener listener)
      • removePropertyChangeListener

        public void removePropertyChangeListener​(java.beans.PropertyChangeListener listener)
      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.lang.String propertyName,
                                              java.beans.PropertyChangeListener listener)
      • removePropertyChangeListener

        public void removePropertyChangeListener​(java.lang.String propertyName,
                                                 java.beans.PropertyChangeListener listener)
      • dfs

        public void dfs​(java.util.function.Consumer<DocumentNode> visitor)
        Depth first tree traversal of the document.
      • fromGson

        public static DocumentNode fromGson​(com.inductiveautomation.ignition.common.gson.JsonElement element)
        Creates a DocumentNode hierarchy from a GSON json tree. All value nodes get the AUTO type.
      • initValidators

        protected void initValidators()
        Override to customize JSON "validator" strategy. Default behavior adds a schema validator, if a schema exists, and warns about duplicate or bad quality keys.