private void appendFilters()

in java/ws-server/src/main/java/com/epam/deltix/tbwg/webapp/services/grafana/GrafanaServiceImpl.java [523:578]


    private void appendFilters(SelectBuilder2 selectBuilder, Map<String, List<FieldFilter>> filters) throws SelectBuilder2.NoSuchFieldException, SelectBuilder2.NoSuchTypeException, SelectBuilder2.WrongTypeException {
        if (filters != null) {
            for (Map.Entry<String, List<FieldFilter>> entry : filters.entrySet()) {
                SelectBuilder2.Type type = selectBuilder.type(entry.getKey());
                for (FieldFilter fieldFilter : entry.getValue()) {
                    SelectBuilder2.Type.Field field = type.field(fieldFilter.getFieldName());
                    switch (fieldFilter.getFilterType()) {
                        case EQUAL:
                            field.equalTo(fieldFilter.getValues().get(0));
                            break;
                        case NOTEQUAL:
                            field.notEqualTo(fieldFilter.getValues().get(0));
                            break;
                        case GREATER:
                            field.greaterThan(fieldFilter.getValues().get(0));
                            break;
                        case NOTGREATER:
                            field.notGreaterThan(fieldFilter.getValues().get(0));
                            break;
                        case LESS:
                            field.lessThan(fieldFilter.getValues().get(0));
                            break;
                        case NOTLESS:
                            field.notLessThan(fieldFilter.getValues().get(0));
                            break;
                        case IN:
                            field.equalTo(fieldFilter.getValues());
                            break;
                        case NOT_IN:
                            field.notEqualTo(fieldFilter.getValues());
                            break;
                        case NULL:
                            field.isNull();
                            break;
                        case NOTNULL:
                            field.notNull();
                            break;
                        case STARTS_WITH:
                            field.startsWith(fieldFilter.getValues().get(0));
                            break;
                        case ENDS_WITH:
                            field.endsWith(fieldFilter.getValues().get(0));
                            break;
                        case CONTAINS:
                            field.contains(fieldFilter.getValues().get(0));
                            break;
                        case NOT_CONTAINS:
                            field.notContains(fieldFilter.getValues().get(0));
                            break;
                        default:
                            throw new UnsupportedOperationException();
                    }
                }
            }
        }
    }