Interface IReconcilingStrategy

  • All Known Implementing Classes:
    SpellingReconcileStrategy

    public interface IReconcilingStrategy
    A reconciling strategy is used by an reconciler to reconcile a model based on text of a particular content type. It provides methods for incremental as well as non-incremental reconciling.

    If a reconcile strategy consists of several steps between which model transformation is desired the each step should implement IReconcileStep.

    In order to provide backward compatibility for clients of IReconcilingStrategy, extension interfaces are used to provide a means of evolution. The following extension interfaces exist:

    • IReconcilingStrategyExtension since version 2.0 introducing the following functions:
      • usage of a progress monitor
      • initial reconciling step: if a reconciler runs as periodic activity in the background, this methods offers the reconciler a chance for initializing its strategies and achieving a reconciled state before the periodic activity starts.

    This interface must be implemented by clients. Implementers should be registered with a reconciler in order get involved in the reconciling process.

    • Method Detail

      • setDocument

        void setDocument​(IDocument document)
        Tells this reconciling strategy on which document it will work. This method will be called before any other method and can be called multiple times. The regions passed to the other methods always refer to the most recent document passed into this method.
        Parameters:
        document - the document on which this strategy will work
      • reconcile

        void reconcile​(DirtyRegion dirtyRegion,
                       IRegion subRegion)
        Activates incremental reconciling of the specified dirty region. As a dirty region might span multiple content types, the segment of the dirty region which should be investigated is also provided to this reconciling strategy. The given regions refer to the document passed into the most recent call of setDocument(IDocument).
        Parameters:
        dirtyRegion - the document region which has been changed
        subRegion - the sub region in the dirty region which should be reconciled
      • reconcile

        void reconcile​(IRegion partition)
        Activates non-incremental reconciling. The reconciling strategy is just told that there are changes and that it should reconcile the given partition of the document most recently passed into setDocument(IDocument).
        Parameters:
        partition - the document partition to be reconciled