Class DatabaseFilterTranslator

  • All Implemented Interfaces:
    org.identityconnectors.framework.common.objects.filter.FilterTranslator<FilterWhereBuilder>

    public abstract class DatabaseFilterTranslator
    extends org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
    DatabaseFilterTranslator abstract class translate filters to database WHERE clause The resource specific getAttributeName must be provided in real translator
    Since:
    1.0
    Version:
    $Revision 1.0$
    • Constructor Detail

      • DatabaseFilterTranslator

        public DatabaseFilterTranslator​(org.identityconnectors.framework.common.objects.ObjectClass oclass,
                                        org.identityconnectors.framework.common.objects.OperationOptions options)
        DatabaseFilterTranslator translate filters to database WHERE clause
        Parameters:
        oclass - the object class
        options - the filter options
    • Method Detail

      • createEqualsExpression

        protected FilterWhereBuilder createEqualsExpression​(org.identityconnectors.framework.common.objects.filter.EqualsFilter filter,
                                                            boolean not)
        Overrides:
        createEqualsExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createEqualsIgnoreCaseExpression

        protected FilterWhereBuilder createEqualsIgnoreCaseExpression​(org.identityconnectors.framework.common.objects.filter.EqualsIgnoreCaseFilter filter,
                                                                      boolean not)
        Overrides:
        createEqualsIgnoreCaseExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createContainsExpression

        protected FilterWhereBuilder createContainsExpression​(org.identityconnectors.framework.common.objects.filter.ContainsFilter filter,
                                                              boolean not)
        Overrides:
        createContainsExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createEndsWithExpression

        protected FilterWhereBuilder createEndsWithExpression​(org.identityconnectors.framework.common.objects.filter.EndsWithFilter filter,
                                                              boolean not)
        Overrides:
        createEndsWithExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createStartsWithExpression

        protected FilterWhereBuilder createStartsWithExpression​(org.identityconnectors.framework.common.objects.filter.StartsWithFilter filter,
                                                                boolean not)
        Overrides:
        createStartsWithExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createGreaterThanExpression

        protected FilterWhereBuilder createGreaterThanExpression​(org.identityconnectors.framework.common.objects.filter.GreaterThanFilter filter,
                                                                 boolean not)
        Overrides:
        createGreaterThanExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createGreaterThanOrEqualExpression

        protected FilterWhereBuilder createGreaterThanOrEqualExpression​(org.identityconnectors.framework.common.objects.filter.GreaterThanOrEqualFilter filter,
                                                                        boolean not)
        Overrides:
        createGreaterThanOrEqualExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createLessThanExpression

        protected FilterWhereBuilder createLessThanExpression​(org.identityconnectors.framework.common.objects.filter.LessThanFilter filter,
                                                              boolean not)
        Overrides:
        createLessThanExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • createLessThanOrEqualExpression

        protected FilterWhereBuilder createLessThanOrEqualExpression​(org.identityconnectors.framework.common.objects.filter.LessThanOrEqualFilter filter,
                                                                     boolean not)
        Overrides:
        createLessThanOrEqualExpression in class org.identityconnectors.framework.common.objects.filter.AbstractFilterTranslator<FilterWhereBuilder>
      • getSQLParam

        protected abstract SQLParam getSQLParam​(org.identityconnectors.framework.common.objects.Attribute attribute,
                                                org.identityconnectors.framework.common.objects.ObjectClass oclass,
                                                org.identityconnectors.framework.common.objects.OperationOptions options)
        Get the SQLParam for given attribute
        Parameters:
        attribute - to translate
        oclass - object class
        options - operation options
        Returns:
        the expected SQLParam, or null if filter not supported Types
      • validateSearchAttribute

        protected boolean validateSearchAttribute​(org.identityconnectors.framework.common.objects.Attribute attribute)
        Validate the attribute to supported search types
        Parameters:
        attribute - attribute
        Returns:
        wheter attribute is valid