Search in sources :

Example 1 with Event

use of org.ballerinalang.siddhi.core.event.Event in project ballerina by ballerina-lang.

the class CronTrigger method sendEvent.

private void sendEvent() {
    long currentTime = siddhiAppContext.getTimestampGenerator().currentTime();
    if (throughputTracker != null && siddhiAppContext.isStatsEnabled()) {
        throughputTracker.eventIn();
    }
    streamJunction.sendEvent(new Event(currentTime, new Object[] { currentTime }));
}
Also used : Event(org.ballerinalang.siddhi.core.event.Event)

Example 2 with Event

use of org.ballerinalang.siddhi.core.event.Event in project ballerina by ballerina-lang.

the class PeriodicTrigger method start.

/**
 * This will be called only once and this can be used to acquire
 * required resources for the processing element.
 * This will be called after initializing the system and before
 * starting to process the events.
 */
@Override
public void start() {
    scheduledFuture = siddhiAppContext.getScheduledExecutorService().scheduleAtFixedRate(new Runnable() {

        @Override
        public void run() {
            long currentTime = siddhiAppContext.getTimestampGenerator().currentTime();
            if (throughputTracker != null && siddhiAppContext.isStatsEnabled()) {
                throughputTracker.eventIn();
            }
            streamJunction.sendEvent(new Event(currentTime, new Object[] { currentTime }));
        }
    }, triggerDefinition.getAtEvery(), triggerDefinition.getAtEvery(), TimeUnit.MILLISECONDS);
}
Also used : Event(org.ballerinalang.siddhi.core.event.Event)

Example 3 with Event

use of org.ballerinalang.siddhi.core.event.Event in project ballerina by ballerina-lang.

the class StreamJunction method sendData.

private void sendData(long timeStamp, Object[] data) {
    // Set timestamp to system if Siddhi is in playback mode
    if (siddhiAppContext.isPlayback()) {
        ((EventTimeBasedMillisTimestampGenerator) this.siddhiAppContext.getTimestampGenerator()).setCurrentTimestamp(timeStamp);
    }
    if (throughputTracker != null && siddhiAppContext.isStatsEnabled()) {
        throughputTracker.eventIn();
    }
    if (disruptor != null) {
        long sequenceNo = ringBuffer.next();
        try {
            Event existingEvent = ringBuffer.get(sequenceNo);
            existingEvent.setTimestamp(timeStamp);
            existingEvent.setIsExpired(false);
            System.arraycopy(data, 0, existingEvent.getData(), 0, data.length);
        } finally {
            ringBuffer.publish(sequenceNo);
        }
    } else {
        for (Receiver receiver : receivers) {
            receiver.receive(timeStamp, data);
        }
    }
}
Also used : EventTimeBasedMillisTimestampGenerator(org.ballerinalang.siddhi.core.util.timestamp.EventTimeBasedMillisTimestampGenerator) ComplexEvent(org.ballerinalang.siddhi.core.event.ComplexEvent) Event(org.ballerinalang.siddhi.core.event.Event)

Example 4 with Event

use of org.ballerinalang.siddhi.core.event.Event in project ballerina by ballerina-lang.

the class StreamJunction method sendEvent.

public void sendEvent(Event event) {
    if (throughputTracker != null && siddhiAppContext.isStatsEnabled()) {
        throughputTracker.eventIn();
    }
    if (isTraceEnabled) {
        log.trace(event + " event is received by streamJunction " + this);
    }
    if (disruptor != null) {
        long sequenceNo = ringBuffer.next();
        try {
            Event existingEvent = ringBuffer.get(sequenceNo);
            existingEvent.copyFrom(event);
        } finally {
            ringBuffer.publish(sequenceNo);
        }
    } else {
        for (Receiver receiver : receivers) {
            receiver.receive(event);
        }
    }
}
Also used : ComplexEvent(org.ballerinalang.siddhi.core.event.ComplexEvent) Event(org.ballerinalang.siddhi.core.event.Event)

Example 5 with Event

use of org.ballerinalang.siddhi.core.event.Event in project ballerina by ballerina-lang.

the class PassThroughSourceMapper method mapAndProcess.

@Override
protected void mapAndProcess(Object eventObject, InputEventHandler inputEventHandler) throws InterruptedException {
    if (eventObject != null) {
        if (eventObject instanceof Event[]) {
            inputEventHandler.sendEvents((Event[]) eventObject);
        } else if (eventObject instanceof Event) {
            inputEventHandler.sendEvent((Event) eventObject);
        } else if (eventObject instanceof Object[]) {
            Event event = new Event(-1, (Object[]) eventObject);
            inputEventHandler.sendEvent(event);
        } else {
            throw new SiddhiAppRuntimeException("Event object must be either Event[], Event or Object[] " + "but found " + eventObject.getClass().getCanonicalName());
        }
    }
}
Also used : SiddhiAppRuntimeException(org.ballerinalang.siddhi.core.exception.SiddhiAppRuntimeException) Event(org.ballerinalang.siddhi.core.event.Event)

Aggregations

Event (org.ballerinalang.siddhi.core.event.Event)832 Test (org.testng.annotations.Test)806 SiddhiAppRuntime (org.ballerinalang.siddhi.core.SiddhiAppRuntime)798 SiddhiManager (org.ballerinalang.siddhi.core.SiddhiManager)798 InputHandler (org.ballerinalang.siddhi.core.stream.input.InputHandler)771 QueryCallback (org.ballerinalang.siddhi.core.query.output.callback.QueryCallback)569 StreamCallback (org.ballerinalang.siddhi.core.stream.output.StreamCallback)203 StreamDefinition (org.ballerinalang.siddhi.query.api.definition.StreamDefinition)83 SiddhiApp (org.ballerinalang.siddhi.query.api.SiddhiApp)78 Query (org.ballerinalang.siddhi.query.api.execution.query.Query)78 ArrayList (java.util.ArrayList)31 ComplexEvent (org.ballerinalang.siddhi.core.event.ComplexEvent)24 StreamEvent (org.ballerinalang.siddhi.core.event.stream.StreamEvent)15 CannotRestoreSiddhiAppStateException (org.ballerinalang.siddhi.core.exception.CannotRestoreSiddhiAppStateException)11 InMemoryPersistenceStore (org.ballerinalang.siddhi.core.util.persistence.InMemoryPersistenceStore)10 PersistenceStore (org.ballerinalang.siddhi.core.util.persistence.PersistenceStore)10 MetaStreamEvent (org.ballerinalang.siddhi.core.event.stream.MetaStreamEvent)9 ByteArrayOutputStream (java.io.ByteArrayOutputStream)6 PrintStream (java.io.PrintStream)6 StreamEventPool (org.ballerinalang.siddhi.core.event.stream.StreamEventPool)6