001    package com.oxygenxml.validate.nvdl;
002    
003    import org.xml.sax.SAXException;
004    /**
005     * No result action. These actions are the validations, either validate, allow or reject.
006     */
007    abstract class NoResultAction extends Action {
008      /**
009       * Creates the action with the specified mode usage.
010       * @param modeUsage The mode usage.
011       */
012      NoResultAction(ModeUsage modeUsage) {
013        super(modeUsage);
014      }
015      /**
016       * Perform this action on the SectionState.
017       * @param state The section state.
018       * @throws SAXException In case of errors.
019       */
020      abstract void perform(SectionState state) throws SAXException;
021      
022      /**
023       * Get a no result action with the current mode changed.
024       * @param mode the new mode.
025       * @return A new no result action.
026       */
027      abstract NoResultAction changeCurrentMode(Mode mode);
028    }