use of com.hazelcast.jet.core.DAG in project hazelcast-jet by hazelcast.
the class HazelcastConnectorTest method when_streamCache_withFilterAndProjection.
@Test
public void when_streamCache_withFilterAndProjection() {
DAG dag = new DAG();
Vertex source = dag.newVertex("source", SourceProcessors.<Integer, Integer, Integer>streamCacheP(streamSourceName, event -> !event.getKey().equals(0), EventJournalCacheEvent::getKey, START_FROM_OLDEST, wmGenParams(i -> i, limitingLag(0), noThrottling(), 10_000)));
Vertex sink = dag.newVertex("sink", writeListP(streamSinkName));
dag.edge(between(source, sink));
Job job = jetInstance.newJob(dag);
ICacheJet<Integer, Integer> sourceCache = jetInstance.getCacheManager().getCache(streamSourceName);
range(0, ENTRY_COUNT).forEach(i -> sourceCache.put(i, i));
assertSizeEventually(ENTRY_COUNT - 1, jetInstance.getList(streamSinkName));
assertFalse(jetInstance.getList(streamSinkName).contains(0));
assertTrue(jetInstance.getList(streamSinkName).contains(1));
job.cancel();
}
use of com.hazelcast.jet.core.DAG in project hazelcast-jet by hazelcast.
the class HazelcastConnectorTest method when_streamMap.
@Test
public void when_streamMap() {
DAG dag = new DAG();
Vertex source = dag.newVertex("source", streamMapP(streamSourceName, START_FROM_OLDEST, wmGenParams(Entry<Integer, Integer>::getValue, limitingLag(0), noThrottling(), 10_000)));
Vertex sink = dag.newVertex("sink", writeListP(streamSinkName));
dag.edge(between(source, sink));
Job job = jetInstance.newJob(dag);
IMapJet<Integer, Integer> sourceMap = jetInstance.getMap(streamSourceName);
range(0, ENTRY_COUNT).forEach(i -> sourceMap.put(i, i));
assertSizeEventually(ENTRY_COUNT, jetInstance.getList(streamSinkName));
job.cancel();
}
use of com.hazelcast.jet.core.DAG in project hazelcast-jet by hazelcast.
the class HazelcastConnectorTest method test_defaultFilter_cacheJournal.
@Test
public void test_defaultFilter_cacheJournal() {
DAG dag = new DAG();
Vertex source = dag.newVertex("source", streamCacheP(streamSourceName, START_FROM_OLDEST, wmGenParams(Entry<Integer, Integer>::getValue, limitingLag(0), noThrottling(), 10_000)));
Vertex sink = dag.newVertex("sink", writeListP(streamSinkName));
dag.edge(between(source, sink));
Job job = jetInstance.newJob(dag);
ICacheJet<Object, Object> sourceCache = jetInstance.getCacheManager().getCache(streamSourceName);
// ADDED
sourceCache.put(1, 1);
// REMOVED - filtered out
sourceCache.remove(1);
// UPDATED
sourceCache.put(1, 2);
IListJet<Entry<Integer, Integer>> sinkList = jetInstance.getList(streamSinkName);
assertTrueEventually(() -> {
assertEquals(2, sinkList.size());
Entry<Integer, Integer> e = sinkList.get(0);
assertEquals(Integer.valueOf(1), e.getKey());
assertEquals(Integer.valueOf(1), e.getValue());
e = sinkList.get(1);
assertEquals(Integer.valueOf(1), e.getKey());
assertEquals(Integer.valueOf(2), e.getValue());
}, 10);
job.cancel();
}
use of com.hazelcast.jet.core.DAG in project hazelcast-jet by hazelcast.
the class HazelcastRemoteConnectorTest method when_readRemoteCache.
@Test
public void when_readRemoteCache() {
populateCache(hz.getCacheManager().getCache(SOURCE_NAME));
DAG dag = new DAG();
Vertex source = dag.newVertex(SOURCE_NAME, readRemoteCacheP(SOURCE_NAME, clientConfig));
Vertex sink = dag.newVertex(SINK_NAME, writeListP(SINK_NAME));
dag.edge(between(source, sink));
executeAndWait(dag);
assertEquals(ITEM_COUNT, jet.getList(SINK_NAME).size());
}
use of com.hazelcast.jet.core.DAG in project hazelcast-jet by hazelcast.
the class HazelcastRemoteConnectorTest method when_streamRemoteMap.
@Test
public void when_streamRemoteMap() {
DAG dag = new DAG();
Vertex source = dag.newVertex(SOURCE_NAME, streamRemoteMapP(SOURCE_NAME, clientConfig, START_FROM_OLDEST, wmGenParams(Entry<Integer, Integer>::getValue, limitingLag(0), noThrottling(), 10_000)));
Vertex sink = dag.newVertex(SINK_NAME, writeListP(SINK_NAME));
dag.edge(between(source, sink));
Job job = jet.newJob(dag);
populateMap(hz.getMap(SOURCE_NAME));
assertSizeEventually(ITEM_COUNT, jet.getList(SINK_NAME));
job.cancel();
}
Aggregations