Class AttributeRegExFilter


  • public class AttributeRegExFilter
    extends AbstractConfigurationFilter
    Implements a simple attribute filter.
    Author:
    Holger Eichelberger
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.regex.Pattern attrPattern  
      private java.util.regex.Pattern valuePattern  
    • Constructor Summary

      Constructors 
      Constructor Description
      AttributeRegExFilter​(java.lang.String attributeNameRegEx, java.lang.String valueRegEx, boolean showAllNestedElements)
      Creates an attribute filter.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean checkVariable​(GUIVariable variable)
      Determines whether a given variable should be shown inside the editor or not.
      • Methods inherited from class org.eclipse.jface.viewers.ViewerFilter

        filter, filter, isFilterProperty
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • attrPattern

        private java.util.regex.Pattern attrPattern
      • valuePattern

        private java.util.regex.Pattern valuePattern
    • Constructor Detail

      • AttributeRegExFilter

        public AttributeRegExFilter​(java.lang.String attributeNameRegEx,
                                    java.lang.String valueRegEx,
                                    boolean showAllNestedElements)
                             throws java.util.regex.PatternSyntaxException
        Creates an attribute filter.
        Parameters:
        attributeNameRegEx - a regular expression for matching attribute names
        valueRegEx - a regular expression for matching the textual representation of values
        showAllNestedElements - whether nested elements of a shown variable will also be filtered
        Throws:
        java.util.regex.PatternSyntaxException - in case of an erroneous pattern syntax
    • Method Detail

      • checkVariable

        protected boolean checkVariable​(GUIVariable variable)
        Description copied from class: AbstractConfigurationFilter
        Determines whether a given variable should be shown inside the editor or not. Parents of variables which shall be shown should not be filtered. The AbstractConfigurationFilter ensures that.
        This method must also ensure that nested elements of a shown variable are also displayed. Therefore, this method should also be written in a recursive manner to check nested elements of displayed variables. This should be done in the following way:
        if(checkVariable(variable)) {
          for(GUIVariable nestedVariable : variable.getNestedVars()) {
            checkVariable(nestedVariable);
          }
        }
        Specified by:
        checkVariable in class AbstractConfigurationFilter
        Parameters:
        variable - The variable which should be tested whether it should be displayed inside the editor
        Returns:
        true if the variable should be displayed, false otherwise.