use of org.jumpmind.symmetric.model.Trigger in project symmetric-ds by JumpMind.
the class RouterServiceTest method testNotProducesCommonBatchesOneTableOneChannelNonDefaultRouter.
@Test
public void testNotProducesCommonBatchesOneTableOneChannelNonDefaultRouter() {
List<TriggerRouter> triggerRouters = new ArrayList<TriggerRouter>();
triggerRouters.add(new TriggerRouter(new Trigger("a", CHANNEL_2_TEST.getChannelId()), new Router("test", SOURCE_NODE_GROUP, TARGET_NODE_GROUP, "column")));
assertTrue(!routerService.producesCommonBatches(CHANNEL_2_TEST, SOURCE_NODE_GROUP, triggerRouters));
}
use of org.jumpmind.symmetric.model.Trigger in project symmetric-ds by JumpMind.
the class RouterServiceTest method testProducesCommonBatchesSameTablesTwoChannelsMultipleRoutersDifferentTableIncomingOnAnotherChannel.
@Test
public void testProducesCommonBatchesSameTablesTwoChannelsMultipleRoutersDifferentTableIncomingOnAnotherChannel() {
List<TriggerRouter> triggerRouters = new ArrayList<TriggerRouter>();
Trigger tableTrigger1 = new Trigger("a", CHANNEL_2_TEST.getChannelId(), true);
Trigger tableTrigger2 = new Trigger("b", "anotherchannel");
Trigger tableTrigger3 = new Trigger("c", CHANNEL_2_TEST.getChannelId());
triggerRouters.add(new TriggerRouter(tableTrigger1, new Router("test", SOURCE_NODE_GROUP, TARGET_NODE_GROUP, "default")));
triggerRouters.add(new TriggerRouter(tableTrigger2, new Router("test", TARGET_NODE_GROUP, SOURCE_NODE_GROUP, "default")));
triggerRouters.add(new TriggerRouter(tableTrigger3, new Router("test", TARGET_NODE_GROUP, SOURCE_NODE_GROUP, "default")));
assertTrue(routerService.producesCommonBatches(CHANNEL_2_TEST, SOURCE_NODE_GROUP, triggerRouters));
}
use of org.jumpmind.symmetric.model.Trigger in project symmetric-ds by JumpMind.
the class RouterServiceTest method testProducesCommonBatchesMultipleTablesTwoChannelsMultipleRoutersBidirectional.
@Test
public void testProducesCommonBatchesMultipleTablesTwoChannelsMultipleRoutersBidirectional() {
List<TriggerRouter> triggerRouters = new ArrayList<TriggerRouter>();
triggerRouters.add(new TriggerRouter(new Trigger("a", CHANNEL_2_TEST.getChannelId()), new Router("test", SOURCE_NODE_GROUP, TARGET_NODE_GROUP, "default")));
triggerRouters.add(new TriggerRouter(new Trigger("a", CHANNEL_2_TEST.getChannelId()), new Router("test", TARGET_NODE_GROUP, SOURCE_NODE_GROUP, "default")));
assertTrue(routerService.producesCommonBatches(CHANNEL_2_TEST, SOURCE_NODE_GROUP, triggerRouters));
}
use of org.jumpmind.symmetric.model.Trigger in project symmetric-ds by JumpMind.
the class RouterServiceTest method testProducesCommonBatchesMultipleTablesTwoChannelsMultipleRouters.
@Test
public void testProducesCommonBatchesMultipleTablesTwoChannelsMultipleRouters() {
List<TriggerRouter> triggerRouters = new ArrayList<TriggerRouter>();
triggerRouters.add(new TriggerRouter(new Trigger("a", CHANNEL_2_TEST.getChannelId()), new Router("test1", SOURCE_NODE_GROUP, TARGET_NODE_GROUP, "default")));
triggerRouters.add(new TriggerRouter(new Trigger("b", "anotherchannel"), new Router("test2", SOURCE_NODE_GROUP, TARGET_NODE_GROUP, "column")));
assertTrue(routerService.producesCommonBatches(CHANNEL_2_TEST, SOURCE_NODE_GROUP, triggerRouters));
}
use of org.jumpmind.symmetric.model.Trigger in project symmetric-ds by JumpMind.
the class RouterService method getTriggerRoutersForData.
protected List<TriggerRouter> getTriggerRoutersForData(Data data) {
List<TriggerRouter> triggerRouters = null;
if (data != null) {
if (data.getTriggerHistory() != null) {
triggerRouters = engine.getTriggerRouterService().getTriggerRoutersForCurrentNode(false).get((data.getTriggerHistory().getTriggerId()));
if (triggerRouters == null && data.getTriggerHistory().getTriggerId() != null && data.getTriggerHistory().getTriggerId().equals(AbstractFileParsingRouter.TRIGGER_ID_FILE_PARSER)) {
TriggerRouter dynamicTriggerRouter = new TriggerRouter();
String routerId = AbstractFileParsingRouter.getRouterIdFromExternalData(data.getExternalData());
dynamicTriggerRouter.setRouter(engine.getTriggerRouterService().getRouterById(routerId));
dynamicTriggerRouter.setTrigger(new Trigger());
triggerRouters = new ArrayList<TriggerRouter>();
triggerRouters.add(dynamicTriggerRouter);
data.setDataEventType(DataEventType.INSERT);
}
if (triggerRouters == null || triggerRouters.size() == 0) {
triggerRouters = engine.getTriggerRouterService().getTriggerRoutersForCurrentNode(true).get((data.getTriggerHistory().getTriggerId()));
}
} else {
log.warn("Could not find a trigger hist record for recorded data {}. Was the trigger hist record deleted manually?", data.getDataId());
}
}
return triggerRouters;
}
Aggregations