Class AbstractReconcileStep

  • All Implemented Interfaces:
    IReconcileStep

    public abstract class AbstractReconcileStep
    extends Object
    implements IReconcileStep
    Abstract implementation of a reconcile step.
    Since:
    3.0
    • Constructor Detail

      • AbstractReconcileStep

        public AbstractReconcileStep​(IReconcileStep step)
        Creates an intermediate reconcile step which adds the given step to the pipe.
        Parameters:
        step - the reconcile step
      • AbstractReconcileStep

        public AbstractReconcileStep()
        Creates the last reconcile step of the pipe.
    • Method Detail

      • isLastStep

        public boolean isLastStep()
        Description copied from interface: IReconcileStep
        Returns whether this is the last reconcile step or not.
        Specified by:
        isLastStep in interface IReconcileStep
        Returns:
        true iff this is the last reconcile step
      • isFirstStep

        public boolean isFirstStep()
        Description copied from interface: IReconcileStep
        Returns whether this is the first reconcile step or not.
        Specified by:
        isFirstStep in interface IReconcileStep
        Returns:
        true iff this is the first reconcile step
      • reconcile

        public final IReconcileResult[] reconcile​(DirtyRegion dirtyRegion,
                                                  IRegion subRegion)
        Description copied from interface: IReconcileStep
        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 IReconcilingStrategy.setDocument(org.eclipse.jface.text.IDocument).
        Specified by:
        reconcile in interface IReconcileStep
        Parameters:
        dirtyRegion - the document region which has been changed
        subRegion - the sub region in the dirty region which should be reconciled
        Returns:
        an array with reconcile results
      • reconcileModel

        protected abstract IReconcileResult[] reconcileModel​(DirtyRegion dirtyRegion,
                                                             IRegion subRegion)
        Reconciles the model of this reconcile step. The result is based on the input model.
        Parameters:
        dirtyRegion - the document region which has been changed
        subRegion - the sub region in the dirty region which should be reconciled
        Returns:
        an array with reconcile results
      • convertToInputModel

        protected IReconcileResult[] convertToInputModel​(IReconcileResult[] inputResults)
        Adapts the given an array with reconcile results to this step's input model and returns it.
        Parameters:
        inputResults - an array with reconcile results
        Returns:
        an array with the reconcile results adapted to the input model
      • isCanceled

        protected final boolean isCanceled()
      • setPreviousStep

        public void setPreviousStep​(IReconcileStep step)
        Description copied from interface: IReconcileStep
        Sets the step which is in front of this step in the pipe.

        Note: This method must be called at most once per reconcile step.

        Specified by:
        setPreviousStep in interface IReconcileStep
        Parameters:
        step - the previous step
      • setInputModel

        public void setInputModel​(IReconcilableModel inputModel)
        Description copied from interface: IReconcileStep
        Tells this reconcile step on which model 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 model passed into this method.
        Specified by:
        setInputModel in interface IReconcileStep
        Parameters:
        inputModel - the model on which this step will work
      • getInputModel

        public IReconcilableModel getInputModel()
        Returns the reconcilable input model.
        Returns:
        the reconcilable input model.
      • getModel

        public abstract IReconcilableModel getModel()
        Returns the reconcilable model.
        Returns:
        the reconcilable model