Class BasicCheck.ContainmentConfigurationBuilder

  • Enclosing class:
    BasicCheck

    public static final class BasicCheck.ContainmentConfigurationBuilder
    extends Object
    Containment configuration builder. Defines the context of the containment object check launching rules. See documentation of methods for the usage instructions. This builder is not intended for the direct creation by check developers
    • Method Detail

      • containment

        public BasicCheck.ContainmentConfigurationBuilder containment​(org.eclipse.emf.ecore.EClass containmentEClass)
        Defines the feature path to the containment object of a current top object to track. The feature path is a sequence of model features (single and many features) which leads to the target containment object from the top object.

        Example: track the tabular section attribute of the Catalog:
        ...
          builder.topObject(CATALOG).
            containment(CATALOG__TABULAR_SECTIONS, DB_OBJECT_TABULAR_SECTION__ATTRIBUTES).
        ...
        Parameters:
        containmentFeaturePath - The feature path. May not be null or empty
        Returns:
        The BasicCheck.ContainmentConfigurationBuilder for configuration chaining. May not be null
      • features

        public BasicCheck.ContainmentConfigurationBuilder features​(org.eclipse.emf.ecore.EStructuralFeature... observedFeatures)
        Configures the change tracking for the set of containment object features. The check will be called in case if any of these features will be changed.

        Example: track changes of the CatalogAttribute name:
        ...
          builder.topObject(CATALOG).
            containment(CATALOG__ATTRIBUTES).
              features(MD_OBJECT__NAME).
        ...
        Parameters:
        observedFeatures - The set of features of the corresponding top object to track changes for. May not be null or empty
        Returns:
        The BasicCheck.ContainmentConfigurationBuilder for configuration chaining. May not be null
      • parameter

        public BasicCheck.CheckParameterBuilder parameter​(String name,
                                                          Class<?> type,
                                                          String defaultValue,
                                                          String title)
        Defines a parameter of the check. The parameter will be available on the check preferences page for the editing and its value will be accessible during the check via the ICheckParameters Example: add Integer parameter to the check:
        ...
          builder.topObject(CATALOG).
            MIN_LENGTH_PARAMETER_NAME, Integer.class, "8", Messages.CatalogCodeLengthCheck_MinLengthParameter_Title).
        ...
        Parameters:
        name - The name of the parameter. May not be null. Must be unique among other parameters being defined for this check. In case if the name is not unqiue any arbitrary parameter definition may be selected as final parameter definition
        type - The type of the parameter. May not be null. The following set of the parameter types are supported:
        • Boolean - supported values are: True, False, TRUE, FALSE
        • Integer - matches requirements of the Integer.valueOf(String)
        • Long - - matches requirements of the Long.valueOf(String)
        • Double - supports dot separated format (XXXX.YYYY)
        • String - any generic string
        defaultValue - The default value (as String). May be null or empty. See the type parameter for the available values.
        title - The title of the parameter to display to the user in the check preferences page. May be null or empty
        Returns:
        The BasicCheck.CheckParameterBuilder for configuration chaining. May not be null
      • topObject

        public BasicCheck.TopObjectConfigurationBuilder topObject​(org.eclipse.emf.ecore.EClass topObjectEClass)
        Defines the check running rule on change of model top object data. The object is defined by the corresponding EClass.
        The rest of check launching configuration for this object should be done via the object being returned by this method

        Example: Start the configuration of check running rules for the Catalog object:
        ...
          builder.topObject(CATALOG).
        ... Please note, that calling of this method will effectively finish the configuration of the currently selected top object and begins the configuration of a new one. It's impossible to proceed with the configuration of the previous top object after the call of this method
        Parameters:
        topObjectEClass - The EClass of the target top object. May not be null
        Returns:
        BasicCheck.TopObjectConfigurationBuilder bound to the context of the selected EClass and ready for further configuration. May not be null