Class DefaultReqEngine

  • All Implemented Interfaces:
    IReqEngine

    public class DefaultReqEngine
    extends Object
    implements IReqEngine
    The requirements engine is in charge of actually computing the requirements between the differences.

    This default implementation aims at being generic enough to be used for any model, whatever the metamodel. However, specific requirements might be necessary.

    TODO document available extension possibilities. TODO to test on XSD models for FeatureMaps
    • Constructor Detail

      • DefaultReqEngine

        public DefaultReqEngine()
    • Method Detail

      • computeRequirements

        public void computeRequirements​(Comparison comparison,
                                        Monitor monitor)
        This is the entry point of the requirements computing process.

        It will complete the input comparison by iterating over the differences it contains, filling in the requirements it can detect for each distinct Diff.

        Specified by:
        computeRequirements in interface IReqEngine
        Parameters:
        comparison - The comparison this engine is expected to complete.
        monitor - The monitor to report progress or to check for cancellation
        See Also:
        IReqEngine.computeRequirements(Comparison, Monitor)
      • checkForRequiredDifferences

        protected void checkForRequiredDifferences​(Comparison comparison,
                                                   Diff difference)
        Checks the potential required differences from the given difference.
        Parameters:
        comparison - The comparison this engine is expected to complete.
        difference - The difference that is to be checked