Search in sources :

Example 6 with Query

use of org.apache.apex.malhar.lib.appdata.schemas.Query in project apex-malhar by apache.

the class SimpleDoneQueryQueueManagerTest method simpleExpire1ThenBlock.

@Test
public void simpleExpire1ThenBlock() {
    SimpleDoneQueueManager<Query, Void> sdqqm = new SimpleDoneQueueManager<Query, Void>();
    sdqqm.setup(null);
    sdqqm.beginWindow(0);
    Query query = new MockQuery("1");
    sdqqm.enqueue(query, null, new MutableBoolean(false));
    QueryBundle<Query, Void, MutableBoolean> qb = sdqqm.dequeue();
    Assert.assertEquals("Should return same query.", query, qb.getQuery());
    qb.getQueueContext().setValue(true);
    qb = sdqqm.dequeue();
    Assert.assertEquals("Should return back null.", null, qb);
    sdqqm.endWindow();
    sdqqm.beginWindow(1);
    qb = sdqqm.dequeue();
    Assert.assertEquals("Should return back null.", null, qb);
    sdqqm.endWindow();
    sdqqm.teardown();
}
Also used : Query(org.apache.apex.malhar.lib.appdata.schemas.Query) MutableBoolean(org.apache.commons.lang3.mutable.MutableBoolean) Test(org.junit.Test)

Example 7 with Query

use of org.apache.apex.malhar.lib.appdata.schemas.Query in project apex-malhar by apache.

the class SimpleDoneQueryQueueManagerTest method simpleExpire1.

@Test
public void simpleExpire1() {
    SimpleDoneQueueManager<Query, Void> sdqqm = new SimpleDoneQueueManager<Query, Void>();
    sdqqm.setup(null);
    sdqqm.beginWindow(0);
    Query query = new MockQuery("1");
    sdqqm.enqueue(query, null, new MutableBoolean(false));
    QueryBundle<Query, Void, MutableBoolean> qb = sdqqm.dequeue();
    Assert.assertEquals("Should return same query.", query, qb.getQuery());
    qb.getQueueContext().setValue(true);
    qb = sdqqm.dequeue();
    Assert.assertEquals("Should return back null.", null, qb);
    sdqqm.endWindow();
    sdqqm.beginWindow(1);
    qb = sdqqm.dequeue();
    Assert.assertEquals("Should return back null.", null, qb);
    sdqqm.endWindow();
    sdqqm.teardown();
}
Also used : Query(org.apache.apex.malhar.lib.appdata.schemas.Query) MutableBoolean(org.apache.commons.lang3.mutable.MutableBoolean) Test(org.junit.Test)

Example 8 with Query

use of org.apache.apex.malhar.lib.appdata.schemas.Query in project apex-malhar by apache.

the class SimpleDoneQueryQueueManagerTest method simpleEnqueueDequeueBlock.

@Test
public void simpleEnqueueDequeueBlock() {
    SimpleDoneQueueManager<Query, Void> sdqqm = new SimpleDoneQueueManager<Query, Void>();
    sdqqm.setup(null);
    sdqqm.beginWindow(0);
    Query query = new MockQuery("1");
    sdqqm.enqueue(query, null, new MutableBoolean(false));
    Assert.assertEquals(1, sdqqm.getNumLeft());
    Assert.assertEquals(sdqqm.getNumPermits(), sdqqm.getNumLeft());
    QueryBundle<Query, Void, MutableBoolean> qb = sdqqm.dequeueBlock();
    Assert.assertEquals(0, sdqqm.getNumLeft());
    Assert.assertEquals(sdqqm.getNumPermits(), sdqqm.getNumLeft());
    Assert.assertEquals("Should return same query.", query, qb.getQuery());
    sdqqm.endWindow();
    sdqqm.teardown();
}
Also used : Query(org.apache.apex.malhar.lib.appdata.schemas.Query) MutableBoolean(org.apache.commons.lang3.mutable.MutableBoolean) Test(org.junit.Test)

Example 9 with Query

use of org.apache.apex.malhar.lib.appdata.schemas.Query in project apex-malhar by apache.

the class SimpleDoneQueryQueueManagerTest method expiredTestBlocking.

@Test
public void expiredTestBlocking() throws Exception {
    SimpleDoneQueueManager<Query, Void> sdqqm = new SimpleDoneQueueManager<Query, Void>();
    sdqqm.setup(null);
    sdqqm.beginWindow(0);
    Query query = new MockQuery("1");
    MutableBoolean queueContext = new MutableBoolean(false);
    sdqqm.enqueue(query, null, queueContext);
    Assert.assertEquals(1, sdqqm.getNumLeft());
    Assert.assertEquals(sdqqm.getNumPermits(), sdqqm.getNumLeft());
    QueryBundle<Query, Void, MutableBoolean> qb = sdqqm.dequeueBlock();
    Assert.assertEquals(0, sdqqm.getNumLeft());
    Assert.assertEquals(sdqqm.getNumPermits(), sdqqm.getNumLeft());
    sdqqm.endWindow();
    sdqqm.beginWindow(1);
    Assert.assertEquals(1, sdqqm.getNumLeft());
    Assert.assertEquals(sdqqm.getNumPermits(), sdqqm.getNumLeft());
    queueContext.setValue(true);
    testBlocking(sdqqm);
    Assert.assertEquals(0, sdqqm.getNumLeft());
    Assert.assertEquals(sdqqm.getNumPermits(), sdqqm.getNumLeft());
    sdqqm.endWindow();
    sdqqm.teardown();
}
Also used : Query(org.apache.apex.malhar.lib.appdata.schemas.Query) MutableBoolean(org.apache.commons.lang3.mutable.MutableBoolean) Test(org.junit.Test)

Example 10 with Query

use of org.apache.apex.malhar.lib.appdata.schemas.Query in project apex-malhar by apache.

the class WEQueryQueueManagerTest method testResetRead.

@Test
public void testResetRead() {
    final int numQueries = 3;
    WindowEndQueueManager<Query, Void> wqqm = new WindowEndQueueManager<>();
    wqqm.setup(null);
    wqqm.beginWindow(0);
    for (int qc = 0; qc < numQueries; qc++) {
        Query query = new MockQuery(Integer.toString(qc));
        wqqm.enqueue(query, null, new MutableLong(3L));
    }
    Query query = wqqm.dequeue().getQuery();
    Query query1 = wqqm.dequeue().getQuery();
    Assert.assertEquals("Query ids must equal.", "0", query.getId());
    Assert.assertEquals("Query ids must equal.", "1", query1.getId());
    wqqm.endWindow();
    wqqm.beginWindow(1);
    {
        int qc = 0;
        for (QueryBundle<Query, Void, MutableLong> tquery; (tquery = wqqm.dequeue()) != null; qc++) {
            Assert.assertEquals("Query ids must equal.", Integer.toString(qc), tquery.getQuery().getId());
        }
        Assert.assertEquals("The number of queries must match.", numQueries, qc);
    }
    wqqm.endWindow();
    wqqm.teardown();
}
Also used : MutableLong(org.apache.commons.lang3.mutable.MutableLong) Query(org.apache.apex.malhar.lib.appdata.schemas.Query) Test(org.junit.Test)

Aggregations

Query (org.apache.apex.malhar.lib.appdata.schemas.Query)19 Test (org.junit.Test)19 MutableBoolean (org.apache.commons.lang3.mutable.MutableBoolean)11 MutableLong (org.apache.commons.lang3.mutable.MutableLong)6 ExceptionSaverExceptionHandler (org.apache.apex.malhar.lib.appdata.ThreadUtils.ExceptionSaverExceptionHandler)1 Result (org.apache.apex.malhar.lib.appdata.schemas.Result)1