private void onError(Tuple tuple) { String id = tuple.getString(TopologyConstants.ID_POSITION); Querier querier = getQuery(id); if (querier == null) { log.debug("Received error for {} without the query existing", id); // TODO Might later create this query if it is received late but whose error was ignored here. This is a leak. return; } RateLimitError error = (RateLimitError) tuple.getValue(TopologyConstants.ERROR_POSITION); emitRateLimitError(id, querier, error); }
private void onError(Tuple tuple) { String id = tuple.getString(TopologyConstants.ID_POSITION); Querier querier = getQuery(id); if (querier == null) { log.debug("Received error for {} without the query existing", id); // TODO Might later create this query if it is received late but whose error was ignored here. This is a leak. return; } RateLimitError error = (RateLimitError) tuple.getValue(TopologyConstants.ERROR_POSITION); emitRateLimitError(id, querier, error); }
private void onData(Tuple tuple) { String id = tuple.getString(TopologyConstants.ID_POSITION); Querier querier = getQuery(id); if (querier == null) { log.debug("Received data for query {} before query. Ignoring...", id); return; } byte[] data = (byte[]) tuple.getValue(TopologyConstants.DATA_POSITION); querier.combine(data); if (querier.isDone()) { emitOrBufferFinished(id, querier); } else if (querier.isExceedingRateLimit()) { emitRateLimitError(id, querier, querier.getRateLimitError()); } else if (querier.isClosed()) { emitWindow(id, querier); } }
private void onData(Tuple tuple) { String id = tuple.getString(TopologyConstants.ID_POSITION); Querier querier = getQuery(id); if (querier == null) { log.debug("Received data for query {} before query. Ignoring...", id); return; } byte[] data = (byte[]) tuple.getValue(TopologyConstants.DATA_POSITION); querier.combine(data); if (querier.isDone()) { emitOrBufferFinished(id, querier); } else if (querier.isExceedingRateLimit()) { emitRateLimitError(id, querier, querier.getRateLimitError()); } else if (querier.isClosed()) { emitWindow(id, querier); } }