You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

NotTranslator.java 868B

123456789101112131415161718192021222324252627
  1. /*
  2. @VaadinApache2LicenseForJavaFiles@
  3. */
  4. package com.vaadin.data.util.sqlcontainer.query.generator.filter;
  5. import com.vaadin.data.Container.Filter;
  6. import com.vaadin.data.util.filter.IsNull;
  7. import com.vaadin.data.util.filter.Not;
  8. import com.vaadin.data.util.sqlcontainer.query.generator.StatementHelper;
  9. public class NotTranslator implements FilterTranslator {
  10. public boolean translatesFilter(Filter filter) {
  11. return filter instanceof Not;
  12. }
  13. public String getWhereStringForFilter(Filter filter, StatementHelper sh) {
  14. Not not = (Not) filter;
  15. if (not.getFilter() instanceof IsNull) {
  16. IsNull in = (IsNull) not.getFilter();
  17. return QueryBuilder.quote(in.getPropertyId()) + " IS NOT NULL";
  18. }
  19. return "NOT "
  20. + QueryBuilder.getWhereStringForFilter(not.getFilter(), sh);
  21. }
  22. }