/** * Stops the underlying native statement from applying its filter query. */ public void stop() { if (LOG.isInfoEnabled()) { LOG.info("Esper statement [" + epl + "] being stopped"); } this.epStatement.stop(); if (LOG.isInfoEnabled()) { LOG.info("Esper statement [" + epl + "] stopped"); } }
public synchronized void removeConsumer() { if (0 == consumers.decrementAndGet()) { statement.stop(); statement.destroy(); } }
@Override public void discard() { LOG.info("Removing existing statements"); for(EPStatement epStatement : epStatements) { epService.getEPAdministrator().getStatement(epStatement.getName()).removeAllListeners(); epService.getEPAdministrator().getStatement(epStatement.getName()).stop(); epService.getEPAdministrator().getStatement(epStatement.getName()).destroy(); } epStatements.clear(); for(String eventName : eventTypeNames) { try { epService.getEPAdministrator().getConfiguration().removeEventType(eventName, false); } catch (ConfigurationException ce) { LOG.error("Event type used in another statement which is still running, skipping..."); } } queue.interrupt(); }