use of com.datatorrent.bufferserver.support.Controller in project apex-core by apache.
the class ServerTest method testPurgeAll.
@Test(dependsOnMethods = { "testPurgeSome" })
@SuppressWarnings("SleepWhileInLoop")
public void testPurgeAll() throws InterruptedException {
bsc = new Controller("MyController");
eventloopClient.connect(address, bsc);
bsc.purge(null, "MyPublisher", 0x7afebabe00000001L);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (bsc.data != null) {
break;
}
}
eventloopClient.disconnect(bsc);
assertNotNull(bsc.data);
bss = new Subscriber("MyPublisher");
eventloopClient.connect(address, bss);
bss.activate(null, "BufferServerOutput/BufferServerSubscriber", "MyPublisher", 0, null, 0L, 0);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (!bss.resetPayloads.isEmpty()) {
break;
}
}
Thread.sleep(10);
eventloopClient.disconnect(bss);
assertEquals(bss.tupleCount.get(), 1);
}
use of com.datatorrent.bufferserver.support.Controller in project apex-core by apache.
the class ServerTest method testPurgeNonExistent.
@Test(dependsOnMethods = { "testATonOfData" })
@SuppressWarnings("SleepWhileInLoop")
public void testPurgeNonExistent() throws InterruptedException {
bsc = new Controller("MyController");
eventloopClient.connect(address, bsc);
bsc.purge(null, "MyPublisher", 0);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (bsc.data != null) {
break;
}
}
eventloopClient.disconnect(bsc);
assertNotNull(bsc.data);
bss = new Subscriber("MyPublisher");
eventloopClient.connect(address, bss);
bss.activate(null, "BufferServerOutput/BufferServerSubscriber", "MyPublisher", 0, null, 0L, 0);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (bss.tupleCount.get() == 205) {
break;
}
}
Thread.sleep(10);
eventloopClient.disconnect(bss);
assertEquals(bss.tupleCount.get(), 205);
}
use of com.datatorrent.bufferserver.support.Controller in project apex-core by apache.
the class DiskStorageTest method setupServerAndClients.
@BeforeClass
public static void setupServerAndClients() throws Exception {
eventloopServer = DefaultEventLoop.createEventLoop("server");
eventloopServer.start();
eventloopClient = DefaultEventLoop.createEventLoop("client");
eventloopClient.start();
instance = new Server(eventloopServer, 0, 1024, 8);
instance.setSpoolStorage(new DiskStorage());
address = instance.run();
assertFalse(address.isUnresolved());
bsp = new Publisher("MyPublisher");
eventloopClient.connect(address, bsp);
bss = new Subscriber("MySubscriber");
eventloopClient.connect(address, bss);
bsc = new Controller("MyPublisher");
eventloopClient.connect(address, bsc);
}
use of com.datatorrent.bufferserver.support.Controller in project apex-core by apache.
the class ServerTest method testReset.
@Test(dependsOnMethods = { "testRepublishLowerWindow" })
@SuppressWarnings("SleepWhileInLoop")
public void testReset() throws InterruptedException {
bsc = new Controller("MyController");
eventloopClient.connect(address, bsc);
bsc.reset(null, "MyPublisher", 0x7afebabe00000001L);
for (int i = 0; i < spinCount * 2; i++) {
Thread.sleep(10);
if (bsc.data != null) {
break;
}
}
eventloopClient.disconnect(bsc);
assertNotNull(bsc.data);
bss = new Subscriber("MySubscriber");
eventloopClient.connect(address, bss);
bss.activate(null, "BufferServerOutput/BufferServerSubscriber", "MyPublisher", 0, null, 0L, 0);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (bss.tupleCount.get() > 0) {
break;
}
}
eventloopClient.disconnect(bss);
assertEquals(bss.tupleCount.get(), 0);
}
use of com.datatorrent.bufferserver.support.Controller in project apex-core by apache.
the class ServerTest method testPurgeSome.
@Test(dependsOnMethods = { "testPurgeNonExistent" })
@SuppressWarnings("SleepWhileInLoop")
public void testPurgeSome() throws InterruptedException {
bsc = new Controller("MyController");
eventloopClient.connect(address, bsc);
bsc.purge(null, "MyPublisher", 0x7afebabe00000000L);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (bsc.data != null) {
break;
}
}
eventloopClient.disconnect(bsc);
assertNotNull(bsc.data);
bss = new Subscriber("MyPublisher");
eventloopClient.connect(address, bss);
bss.activate(null, "BufferServerOutput/BufferServerSubscriber", "MyPublisher", 0, null, 0L, 0);
for (int i = 0; i < spinCount; i++) {
Thread.sleep(10);
if (bss.tupleCount.get() == 103) {
break;
}
}
eventloopClient.disconnect(bss);
assertEquals(bss.tupleCount.get(), 103);
}
Aggregations