Search in sources :

Example 71 with Query

use of org.molgenis.emx2.Query in project opensearch-java by opensearch-project.

the class ClientTests method testClient.

@Test
public void testClient() throws Exception {
    Client client = new Client() {

        @Override
        protected <RequestT, ResponseT, ErrorT> ResponseT performRequest(RequestT request, Endpoint<RequestT, ResponseT, ErrorT> endpoint) throws IOException {
            // don't care for now, we're testing compilation
            return null;
        }
    };
    client.foo(fb -> fb.name("z").value(1).routing("fooo").query(q -> q.bool(b -> b.add_must(m -> m.terms((TermsQuery) null))).meta(Collections.emptyMap())));
    // Builders everywhere
    FooResponse r1 = client.foo(FooRequest.builder().name("z").value(1).bar(Bar.builder().name("Raise the bar").build()).build());
    // Illustrates creating an object outside of the client call
    TermsQuery filter = TermsQuery.builder().field("foo").term("bar").build();
    Query filter2 = new Query.Builder().terms(t -> t.field("foo").term("bar")).build();
    // Fluid lambda-based builders
    FooResponse r2 = client.foo(f -> f.name("z").value(1).bar(bar -> bar.name("Raise the bar")).query(q -> q.bool(b -> b.add_must(q1 -> q1.terms(filter)).add_must(q1 -> q1.terms(t -> t.field("a").term("b"))).add_must(q1 -> q1.terms(t -> t.field("a").term("b"))).minimumShouldMatch(2))));
}
Also used : FooRequest(org.opensearch.client.opensearch.experiments.api.FooRequest) Client(org.opensearch.client.opensearch.experiments.base.Client) Query(org.opensearch.client.opensearch.experiments.api.query2.Query) Endpoint(org.opensearch.client.transport.Endpoint) Bar(org.opensearch.client.opensearch.experiments.api.Bar) Test(org.junit.Test) IOException(java.io.IOException) FooResponse(org.opensearch.client.opensearch.experiments.api.FooResponse) TermsQuery(org.opensearch.client.opensearch.experiments.api.query2.TermsQuery) Collections(java.util.Collections) Endpoint(org.opensearch.client.transport.Endpoint) Query(org.opensearch.client.opensearch.experiments.api.query2.Query) TermsQuery(org.opensearch.client.opensearch.experiments.api.query2.TermsQuery) FooResponse(org.opensearch.client.opensearch.experiments.api.FooResponse) Client(org.opensearch.client.opensearch.experiments.base.Client) TermsQuery(org.opensearch.client.opensearch.experiments.api.query2.TermsQuery) Test(org.junit.Test)

Example 72 with Query

use of org.molgenis.emx2.Query in project molgenis-emx2 by molgenis.

the class TestGraphqlAdminFields method execute.

private JsonNode execute(String query) throws IOException {
    String result = convertExecutionResultToJson(grapql.execute(query));
    JsonNode node = new ObjectMapper().readTree(result);
    if (node.get("errors") != null) {
        throw new MolgenisException(node.get("errors").get(0).get("message").asText());
    }
    return new ObjectMapper().readTree(result).get("data");
}
Also used : MolgenisException(org.molgenis.emx2.MolgenisException) JsonNode(com.fasterxml.jackson.databind.JsonNode) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper)

Example 73 with Query

use of org.molgenis.emx2.Query in project molgenis-emx2 by molgenis.

the class TestGraphqlCrossSchemaRefs method execute.

private JsonNode execute(String query) throws IOException {
    String result = convertExecutionResultToJson(graphql.execute(query));
    JsonNode node = new ObjectMapper().readTree(result);
    if (node.get("errors") != null) {
        throw new MolgenisException(node.get("errors").get(0).get("message").asText(), "");
    }
    return new ObjectMapper().readTree(result).get("data");
}
Also used : MolgenisException(org.molgenis.emx2.MolgenisException) JsonNode(com.fasterxml.jackson.databind.JsonNode) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper)

Example 74 with Query

use of org.molgenis.emx2.Query in project molgenis-emx2 by molgenis.

the class GraphqlApi method getVariablesFromRequest.

private static Map<String, Object> getVariablesFromRequest(Request request) {
    if ("POST".equals(request.requestMethod())) {
        try {
            if (request.headers("Content-Type").startsWith("multipart/form-data")) {
                Map<String, Object> variables = new ObjectMapper().readValue(request.queryParams(VARIABLES), Map.class);
                // now replace each part id with the part
                putPartsIntoMap(variables, request.raw().getParts().stream().filter(p -> !p.getName().equals(VARIABLES) && !p.getName().equals(QUERY)).collect(Collectors.toList()));
                // 
                return variables;
            } else {
                Map<String, Object> node = new ObjectMapper().readValue(request.body(), Map.class);
                return (Map<String, Object>) node.get(VARIABLES);
            }
        } catch (Exception e) {
            throw new MolgenisException("Parsing of graphql variables failed. Should be an object with each graphql variable a key. " + e.getMessage(), e);
        }
    }
    return null;
}
Also used : MolgenisException(org.molgenis.emx2.MolgenisException) Map(java.util.Map) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) MolgenisException(org.molgenis.emx2.MolgenisException) IOException(java.io.IOException) GraphqlException(org.molgenis.emx2.graphql.GraphqlException)

Example 75 with Query

use of org.molgenis.emx2.Query in project molgenis-emx2 by molgenis.

the class CatalogueSiteMapTest method buildSiteMap.

@Test
public void buildSiteMap() {
    Schema schema = mock(Schema.class);
    Table table = mock(Table.class);
    Query query = mock(Query.class);
    List<Row> row = Collections.singletonList(new Row("pid", "my-cohort-pid"));
    when(schema.getTable("Cohorts")).thenReturn(table);
    when(table.select(any())).thenReturn(query);
    when(query.retrieveRows()).thenReturn(row);
    CatalogueSiteMap catalogueSiteMap = new CatalogueSiteMap(schema, "https://my/base/url");
    String expected = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\" >\n" + "  <url>\n" + "    <loc>https://my/base/url/ssr-catalogue/Cohorts/my-cohort-pid</loc>\n" + "  </url>\n" + "</urlset>";
    assertEquals(expected, catalogueSiteMap.buildSiteMap());
}
Also used : Table(org.molgenis.emx2.Table) Query(org.molgenis.emx2.Query) Schema(org.molgenis.emx2.Schema) Row(org.molgenis.emx2.Row) Test(org.junit.Test)

Aggregations

Query (org.jpl7.Query)88 Term (org.jpl7.Term)52 Variable (org.jpl7.Variable)32 Query (org.hypertrace.entity.data.service.v1.Query)31 Map (java.util.Map)28 Test (org.junit.jupiter.api.Test)23 Atom (org.jpl7.Atom)21 Compound (org.jpl7.Compound)18 Test (org.junit.Test)18 Filter (org.hypertrace.core.documentstore.Filter)16 Query (com.google.datastore.v1.Query)14 AttributeFilter (org.hypertrace.entity.data.service.v1.AttributeFilter)14 GqlQuery (com.google.datastore.v1.GqlQuery)7 ArrayList (java.util.ArrayList)7 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)6 Entity (org.hypertrace.entity.data.service.v1.Entity)6 Integer (org.jpl7.Integer)6 Query (org.molgenis.emx2.Query)6 IOException (java.io.IOException)5 Collections (java.util.Collections)5