Search in sources :

Example 16 with IsLessThan

use of uk.gov.gchq.gaffer.function.filter.IsLessThan in project Gaffer by gchq.

the class ArrayListStoreTest method shouldAddAndGetEdgesBySeed.

@Test
public void shouldAddAndGetEdgesBySeed() throws OperationException {
    final Graph graph = createGraph();
    addElementsToGraph(graph);
    //set up the operation to fetch the edges
    final OperationChain<CloseableIterable<SimpleEdgeDataObject>> opChain = new OperationChain.Builder().first(new GetEdges.Builder().addSeed(new EdgeSeed(2, 1, false)).view(new View.Builder().edge(TestGroups.EDGE, new ViewElementDefinition.Builder().preAggregationFilter(new ElementFilter.Builder().select(TestPropertyNames.INT).execute(new IsLessThan(2)).build()).build()).build()).build()).then(new GenerateObjects.Builder<Edge, SimpleEdgeDataObject>().generator(new SimpleEdgeGenerator()).build()).build();
    //now do the hop
    final CloseableIterable<SimpleEdgeDataObject> results = graph.execute(opChain, new User());
    //check the results by converting our edges back into SimpleDataObjects
    if (!results.iterator().hasNext()) {
        fail("No results returned");
    } else {
        for (final SimpleEdgeDataObject obj : results) {
            LOGGER.info(obj.toString());
        }
        final List<SimpleEdgeDataObject> resultList = Lists.newArrayList(results);
        assertEquals(1, resultList.size());
        int index = 0;
        SimpleEdgeDataObject obj = resultList.get(index);
        assertEquals(1, obj.getLeft());
        assertEquals(2, obj.getRight());
        assertEquals(1, obj.getVisibility());
        assertEquals("121", obj.getProperties());
    }
    results.close();
}
Also used : User(uk.gov.gchq.gaffer.user.User) CloseableIterable(uk.gov.gchq.gaffer.commonutil.iterable.CloseableIterable) ViewElementDefinition(uk.gov.gchq.gaffer.data.elementdefinition.view.ViewElementDefinition) View(uk.gov.gchq.gaffer.data.elementdefinition.view.View) SimpleEdgeGenerator(uk.gov.gchq.gaffer.arrayliststore.data.generator.SimpleEdgeGenerator) Graph(uk.gov.gchq.gaffer.graph.Graph) IsLessThan(uk.gov.gchq.gaffer.function.filter.IsLessThan) OperationChain(uk.gov.gchq.gaffer.operation.OperationChain) EdgeSeed(uk.gov.gchq.gaffer.operation.data.EdgeSeed) SimpleEdgeDataObject(uk.gov.gchq.gaffer.arrayliststore.data.SimpleEdgeDataObject) Test(org.junit.Test)

Example 17 with IsLessThan

use of uk.gov.gchq.gaffer.function.filter.IsLessThan in project Gaffer by gchq.

the class OrExample method property1IsLessThan2OrProperty2IsMoreThan2.

public void property1IsLessThan2OrProperty2IsMoreThan2() {
    // ---------------------------------------------------------
    final Or function = new Or(Arrays.asList(new ConsumerFunctionContext.Builder<Integer, FilterFunction>().select(// select first property
    0).execute(new IsLessThan(2)).build(), new ConsumerFunctionContext.Builder<Integer, FilterFunction>().select(// select second property
    1).execute(new IsMoreThan(2)).build()));
    // ---------------------------------------------------------
    runExample(function, new Object[] { 1, 3 }, new Object[] { 1, 1 }, new Object[] { 3, 3 }, new Object[] { 3, 1 }, new Object[] { 1L, 3L }, new Object[] { 1 });
}
Also used : FilterFunction(uk.gov.gchq.gaffer.function.FilterFunction) Or(uk.gov.gchq.gaffer.function.filter.Or) ConsumerFunctionContext(uk.gov.gchq.gaffer.function.context.ConsumerFunctionContext) IsLessThan(uk.gov.gchq.gaffer.function.filter.IsLessThan) IsMoreThan(uk.gov.gchq.gaffer.function.filter.IsMoreThan)

Example 18 with IsLessThan

use of uk.gov.gchq.gaffer.function.filter.IsLessThan in project Gaffer by gchq.

the class OrExample method isLessThan2OrIsMoreThan2.

public void isLessThan2OrIsMoreThan2() {
    // ---------------------------------------------------------
    final Or function = new Or(Arrays.asList(new ConsumerFunctionContext.Builder<Integer, FilterFunction>().select(// select first property
    0).execute(new IsLessThan(2)).build(), new ConsumerFunctionContext.Builder<Integer, FilterFunction>().select(// select first property
    0).execute(new IsMoreThan(2)).build()));
    // ---------------------------------------------------------
    runExample(function, new Object[] { 1 }, new Object[] { 2 }, new Object[] { 3 }, new Object[] { 1L }, new Object[] { 3L });
}
Also used : FilterFunction(uk.gov.gchq.gaffer.function.FilterFunction) Or(uk.gov.gchq.gaffer.function.filter.Or) ConsumerFunctionContext(uk.gov.gchq.gaffer.function.context.ConsumerFunctionContext) IsLessThan(uk.gov.gchq.gaffer.function.filter.IsLessThan) IsMoreThan(uk.gov.gchq.gaffer.function.filter.IsMoreThan)

Example 19 with IsLessThan

use of uk.gov.gchq.gaffer.function.filter.IsLessThan in project Gaffer by gchq.

the class IsLessThanExample method isLessThanAString.

public void isLessThanAString() {
    // ---------------------------------------------------------
    final IsLessThan function = new IsLessThan("B");
    // ---------------------------------------------------------
    runExample(function, 1, "A", "B", "C");
}
Also used : IsLessThan(uk.gov.gchq.gaffer.function.filter.IsLessThan)

Example 20 with IsLessThan

use of uk.gov.gchq.gaffer.function.filter.IsLessThan in project Gaffer by gchq.

the class IsLessThanExample method isLessThanOrEqualTo5.

public void isLessThanOrEqualTo5() {
    // ---------------------------------------------------------
    final IsLessThan function = new IsLessThan(5, true);
    // ---------------------------------------------------------
    runExample(function, 1, 1L, 5, 5L, 10, 10L, "1");
}
Also used : IsLessThan(uk.gov.gchq.gaffer.function.filter.IsLessThan)

Aggregations

IsLessThan (uk.gov.gchq.gaffer.function.filter.IsLessThan)21 Test (org.junit.Test)11 View (uk.gov.gchq.gaffer.data.elementdefinition.view.View)11 IsMoreThan (uk.gov.gchq.gaffer.function.filter.IsMoreThan)10 ConsumerFunctionContext (uk.gov.gchq.gaffer.function.context.ConsumerFunctionContext)9 ViewElementDefinition (uk.gov.gchq.gaffer.data.elementdefinition.view.ViewElementDefinition)8 FilterFunction (uk.gov.gchq.gaffer.function.FilterFunction)8 EntitySeed (uk.gov.gchq.gaffer.operation.data.EntitySeed)7 Graph (uk.gov.gchq.gaffer.graph.Graph)6 OperationChain (uk.gov.gchq.gaffer.operation.OperationChain)6 User (uk.gov.gchq.gaffer.user.User)6 ArrayList (java.util.ArrayList)5 GreaterThan (org.apache.spark.sql.sources.GreaterThan)5 LessThan (org.apache.spark.sql.sources.LessThan)5 CloseableIterable (uk.gov.gchq.gaffer.commonutil.iterable.CloseableIterable)5 SQLContext (org.apache.spark.sql.SQLContext)4 Filter (org.apache.spark.sql.sources.Filter)4 EdgeSeed (uk.gov.gchq.gaffer.operation.data.EdgeSeed)4 Schema (uk.gov.gchq.gaffer.store.schema.Schema)4 HashSet (java.util.HashSet)3