/** * Parses the filterString and constructs a filter using it * <p> * @param filterString filter string given by the user * @return filter object we constructed */ public Filter parseFilterString (String filterString) throws CharacterCodingException { return parseFilterString(Bytes.toBytes(filterString)); }
static Filter parseFilterString(String filterString) { if (filterString == null) { return null; } try { return FILTER_PARSEER.parseFilterString(filterString); } catch (CharacterCodingException e) { throw new DrillRuntimeException("Error parsing filter string: " + filterString, e); } }
private <T extends Filter> T doTestFilter(String filterString, Class<T> clazz) throws IOException { byte [] filterStringAsByteArray = Bytes.toBytes(filterString); filter = f.parseFilterString(filterStringAsByteArray); assertEquals(clazz, filter.getClass()); return clazz.cast(filter); }
@Test public void testIncorrectFilterString() throws IOException { String filterString = "()"; byte [] filterStringAsByteArray = Bytes.toBytes(filterString); try { filter = f.parseFilterString(filterStringAsByteArray); assertTrue(false); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); } }
@Test public void testFirstKeyOnlyFilter() throws IOException { String filterString = " FirstKeyOnlyFilter( ) "; doTestFilter(filterString, FirstKeyOnlyFilter.class); String filterString2 = " FirstKeyOnlyFilter ('') "; byte [] filterStringAsByteArray2 = Bytes.toBytes(filterString2); try { filter = f.parseFilterString(filterStringAsByteArray2); assertTrue(false); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); } }
@Test public void testKeyOnlyFilter() throws IOException { String filterString = "KeyOnlyFilter()"; doTestFilter(filterString, KeyOnlyFilter.class); String filterString2 = "KeyOnlyFilter ('') "; byte [] filterStringAsByteArray2 = Bytes.toBytes(filterString2); try { filter = f.parseFilterString(filterStringAsByteArray2); assertTrue(false); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); } }
if (StringUtils.isNotEmpty(paramFilter)) { ParseFilter pf = new ParseFilter(); Filter parsedParamFilter = pf.parseFilterString(paramFilter); if (parsedParamFilter != null) { filterList.addFilter(parsedParamFilter);
@Override public void scan(String tableName, Collection<Column> columns, String filterExpression, long minTime, List<String> visibilityLabels, ResultHandler handler) throws IOException { Filter filter = null; if (!StringUtils.isBlank(filterExpression)) { ParseFilter parseFilter = new ParseFilter(); filter = parseFilter.parseFilterString(filterExpression); } try (final Table table = connection.getTable(TableName.valueOf(tableName)); final ResultScanner scanner = getResults(table, columns, filter, minTime, visibilityLabels)) { for (final Result result : scanner) { final byte[] rowKey = result.getRow(); final Cell[] cells = result.rawCells(); if (cells == null) { continue; } // convert HBase cells to NiFi cells final ResultCell[] resultCells = new ResultCell[cells.length]; for (int i=0; i < cells.length; i++) { final Cell cell = cells[i]; final ResultCell resultCell = getResultCell(cell); resultCells[i] = resultCell; } // delegate to the handler handler.handle(rowKey, resultCells); } } }
@Override public void scan(String tableName, Collection<Column> columns, String filterExpression, long minTime, List<String> visibilityLabels, ResultHandler handler) throws IOException { Filter filter = null; if (!StringUtils.isBlank(filterExpression)) { ParseFilter parseFilter = new ParseFilter(); filter = parseFilter.parseFilterString(filterExpression); } try (final Table table = connection.getTable(TableName.valueOf(tableName)); final ResultScanner scanner = getResults(table, columns, filter, minTime, visibilityLabels)) { for (final Result result : scanner) { final byte[] rowKey = result.getRow(); final Cell[] cells = result.rawCells(); if (cells == null) { continue; } // convert HBase cells to NiFi cells final ResultCell[] resultCells = new ResultCell[cells.length]; for (int i=0; i < cells.length; i++) { final Cell cell = cells[i]; final ResultCell resultCell = getResultCell(cell); resultCells[i] = resultCell; } // delegate to the handler handler.handle(rowKey, resultCells); } } }
filter = parseFilter.parseFilterString(filterExpression);
filter = parseFilter.parseFilterString(filterExpression);
@Test public void testCompoundFilter5() throws IOException { String filterStr = "(ValueFilter(!=, 'substring:pre'))"; ValueFilter valueFilter = doTestFilter(filterStr, ValueFilter.class); assertTrue(valueFilter.getComparator() instanceof SubstringComparator); filterStr = "(ValueFilter(>=,'binary:x') AND (ValueFilter(<=,'binary:y')))" + " OR ValueFilter(=,'binary:ab')"; filter = f.parseFilterString(filterStr); assertTrue(filter instanceof FilterList); List<Filter> list = ((FilterList) filter).getFilters(); assertEquals(2, list.size()); assertTrue(list.get(0) instanceof FilterList); assertTrue(list.get(1) instanceof ValueFilter); }
/** * Parses the filterString and constructs a filter using it * <p> * @param filterString filter string given by the user * @return filter object we constructed */ public Filter parseFilterString (String filterString) throws CharacterCodingException { return parseFilterString(Bytes.toBytes(filterString)); }
ParseFilter parseFilter = new ParseFilter(); scan.setFilter( parseFilter.parseFilterString(tScan.getFilterString()));
out.setFilter(parseFilter.parseFilterString(in.getFilterString()));
out.setFilter(parseFilter.parseFilterString(in.getFilterString()));
static Filter parseFilterString(String filterString) { if (filterString == null) { return null; } try { return FILTER_PARSEER.parseFilterString(filterString); } catch (CharacterCodingException e) { throw new RuntimeException("Error parsing filter string: " + filterString, e); } }
/** * Parses the filterString and constructs a filter using it * <p> * @param filterString filter string given by the user * @return filter object we constructed */ public Filter parseFilterString (String filterString) throws CharacterCodingException { return parseFilterString(Bytes.toBytes(filterString)); }
/** * Parses the filterString and constructs a filter using it * <p> * @param filterString filter string given by the user * @return filter object we constructed */ public Filter parseFilterString (String filterString) throws CharacterCodingException { return parseFilterString(Bytes.toBytes(filterString)); }
@Test public void testIncorrectFilterString() throws IOException { String filterString = "()"; byte [] filterStringAsByteArray = Bytes.toBytes(filterString); try { filter = f.parseFilterString(filterStringAsByteArray); assertTrue(false); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); } }