/** * Builds a QueryBuilder from the given string * @param raw a JSON string or an URI search * @param isQuery true if the string is a query otherwise the string is considered as * a filter (only relevant for elasticsearch version prior to 2.x). * @return * @throws IOException */ public static QueryBuilder parse(String raw, boolean isQuery) throws IOException { if (raw.startsWith("?")) { return parseURI(raw.substring(1)); } else if (raw.startsWith("{")) { return new RawQueryBuilder(raw, isQuery); } else { throw new IllegalArgumentException("Failed to parse query: " + raw); } }
aliasFilters.add(new RawQueryBuilder(alias.getFilter(), false)); } catch (IOException e) { throw new EsHadoopIllegalArgumentException("Failed to parse alias filter: [" + alias.getFilter() + "]");
static QueryBuilder randomRawQueryStringQuery(Random rand, int level) { QueryBuilder query = randomQuery(rand); FastByteArrayOutputStream out = new FastByteArrayOutputStream(256); Generator generator = new JacksonJsonGenerator(out); generator.writeBeginObject(); query.toJson(generator); generator.writeEndObject(); generator.close(); try { return new RawQueryBuilder(out.toString().trim(), false); } catch (IOException e) { throw new IllegalArgumentException("failed to parse raw query", e); } }
@Test public void testEquals() throws IOException { for (int i = 0; i < 20; i++) { QueryBuilder randomQuery = RandomQueryBuilders.randomQuery(random); String queryString = printQueryBuilder(randomQuery, false); RawQueryBuilder rawQuery = new RawQueryBuilder(queryString, false); String rawQueryString = printQueryBuilder(rawQuery, false); assertEquals(queryString, rawQueryString); if (randomQuery instanceof RawQueryBuilder) { assertEquals(randomQuery, rawQuery); } else { assertNotEquals(randomQuery, rawQuery); } } } }
/** * Builds a QueryBuilder from the given string * @param raw a JSON string or an URI search * @param isQuery true if the string is a query otherwise the string is considered as * a filter (only relevant for elasticsearch version prior to 2.x). * @return * @throws IOException */ public static QueryBuilder parse(String raw, boolean isQuery) throws IOException { if (raw.startsWith("?")) { return parseURI(raw.substring(1)); } else if (raw.startsWith("{")) { return new RawQueryBuilder(raw, isQuery); } else { throw new IllegalArgumentException("Failed to parse query: " + raw); } }
/** * Builds a QueryBuilder from the given string * @param raw a JSON string or an URI search * @param isQuery true if the string is a query otherwise the string is considered as * a filter (only relevant for elasticsearch version prior to 2.x). * @return * @throws IOException */ public static QueryBuilder parse(String raw, boolean isQuery) throws IOException { if (raw.startsWith("?")) { return parseURI(raw.substring(1)); } else if (raw.startsWith("{")) { return new RawQueryBuilder(raw, isQuery); } else { throw new IllegalArgumentException("Failed to parse query: " + raw); } }
/** * Builds a QueryBuilder from the given string * @param raw a JSON string or an URI search * @param isQuery true if the string is a query otherwise the string is considered as * a filter (only relevant for elasticsearch version prior to 2.x). * @return * @throws IOException */ public static QueryBuilder parse(String raw, boolean isQuery) throws IOException { if (raw.startsWith("?")) { return parseURI(raw.substring(1)); } else if (raw.startsWith("{")) { return new RawQueryBuilder(raw, isQuery); } else { throw new IllegalArgumentException("Failed to parse query: " + raw); } }
aliasFilters.add(new RawQueryBuilder(alias.getFilter(), false)); } catch (IOException e) { throw new EsHadoopIllegalArgumentException("Failed to parse alias filter: [" + alias.getFilter() + "]");
aliasFilters.add(new RawQueryBuilder(alias.getFilter(), false)); } catch (IOException e) { throw new EsHadoopIllegalArgumentException("Failed to parse alias filter: [" + alias.getFilter() + "]");
aliasFilters.add(new RawQueryBuilder(alias.getFilter(), false)); } catch (IOException e) { throw new EsHadoopIllegalArgumentException("Failed to parse alias filter: [" + alias.getFilter() + "]");