Class mxSharedState

  • Direct Known Subclasses:
    mxSharedGraphModel

    public class mxSharedState
    extends mxEventSource
    Implements a diagram that may be shared among multiple sessions. This implementation is based only on string, it does not have a model instance. The diagram is represented by its initial state and the sequence of edits as applied to the diagram.
    • Field Detail

      • state

        protected java.lang.String state
        Holds the initial state of the diagram.
      • delta

        protected java.lang.StringBuffer delta
        Holds the history of all changes of initial state.
    • Constructor Detail

      • mxSharedState

        public mxSharedState​(java.lang.String state)
        Constructs a new diagram with the given state.
        Parameters:
        state - Initial state of the diagram.
    • Method Detail

      • getState

        public java.lang.String getState()
        Returns the initial state of the diagram.
      • getDelta

        public java.lang.String getDelta()
        Returns the history of all changes as a string.
      • processDelta

        public void processDelta​(java.lang.Object sender,
                                 org.w3c.dom.Node delta)
        Appends the given string to the history and dispatches the change to all sessions that are listening to this shared diagram.
        Parameters:
        sender - Session where the change originated from.
        delta - XML that represents the change.
      • processEdit

        protected java.lang.String processEdit​(org.w3c.dom.Node node)
      • addDelta

        public void addDelta​(java.lang.String xml)
      • resetDelta

        public void resetDelta()
        Clears the history of all changes.
      • addDiagramChangeListener

        public void addDiagramChangeListener​(mxSharedState.mxDiagramChangeListener listener)
        Adds the given listener to the list of diagram change listeners.
        Parameters:
        listener - Diagram change listener to be added.
      • removeDiagramChangeListener

        public void removeDiagramChangeListener​(mxSharedState.mxDiagramChangeListener listener)
        Removes the given listener from the list of diagram change listeners.
        Parameters:
        listener - Diagram change listener to be removed.