use of com.thinkbiganalytics.nifi.core.api.precondition.PreconditionListener in project kylo by Teradata.
the class BeginFeed method ensurePreconditonListener.
private void ensurePreconditonListener(ProcessContext context, Feed feed, String[] dsNames) {
if (this.preconditionListener == null) {
MetadataProvider provider = getProviderService(context).getProvider();
FeedPreconditionEventService precondService = getPreconditionService(context);
PreconditionListener listener = new PreconditionListener() {
@Override
public void triggered(FeedPreconditionTriggerEvent event) {
getLog().debug("Precondition event triggered: ", new Object[] { event });
BeginFeed.this.pendingChanges.add(event);
}
};
for (String dsName : dsNames) {
getLog().debug("Adding precondition listener for datasoure name: " + dsName);
precondService.addListener("", dsName, listener);
}
this.preconditionListener = listener;
}
}
use of com.thinkbiganalytics.nifi.core.api.precondition.PreconditionListener in project kylo by Teradata.
the class TriggerFeed method createPreconditionListener.
private PreconditionListener createPreconditionListener() {
PreconditionListener listener = new PreconditionListener() {
@Override
public void triggered(FeedPreconditionTriggerEvent event) {
getLog().debug("Precondition event triggered: {}", new Object[] { event });
TriggerFeed.this.triggerEventQueue.add(event);
}
};
return listener;
}
use of com.thinkbiganalytics.nifi.core.api.precondition.PreconditionListener in project kylo by Teradata.
the class JmsPreconditionEventConsumer method receiveEvent.
@JmsListener(destination = MetadataQueues.PRECONDITION_TRIGGER, containerFactory = JmsConstants.QUEUE_LISTENER_CONTAINER_FACTORY)
public void receiveEvent(FeedPreconditionTriggerEvent event) {
LOG.debug("{} Received JMS message - topic: {}, message: {}", this, MetadataQueues.PRECONDITION_TRIGGER, event);
LOG.info("{} Received feed precondition trigger event: {}", this, event);
String key = generateKey(event.getCategory(), event.getFeedName());
LOG.debug("{} Looking up precondition listener for key '{}'", this, key);
PreconditionListener listener = this.listeners.get(key);
if (listener != null) {
LOG.debug("{} Found precondition listener for key '{}'", this, key);
listener.triggered(event);
} else {
LOG.debug("{} No precondition listeners found for key '{}'", this, key);
}
}
Aggregations