@Override public int compare(TridentTuple tuple1, TridentTuple tuple2) { Vehicle vehicle1 = (Vehicle) tuple1.getValueByField(Vehicle.FIELD_NAME); Vehicle vehicle2 = (Vehicle) tuple2.getValueByField(Vehicle.FIELD_NAME); return Double.compare(vehicle1.efficiency, vehicle2.efficiency); }
@Override public int compare(TridentTuple tuple1, TridentTuple tuple2) { Vehicle vehicle1 = (Vehicle) tuple1.getValueByField(Vehicle.FIELD_NAME); Vehicle vehicle2 = (Vehicle) tuple2.getValueByField(Vehicle.FIELD_NAME); return Integer.compare(vehicle1.maxSpeed, vehicle2.maxSpeed); } }
@Override public int compare(TridentTuple t1, TridentTuple t2) { Comparable c1 = (Comparable) t1.getValueByField(_sortField); Comparable c2 = (Comparable) t2.getValueByField(_sortField); int ret = c1.compareTo(c2); if (_reverse) ret *= -1; return ret; } });
@Override public int compare(TridentTuple tuple1, TridentTuple tuple2) { Vehicle vehicle1 = (Vehicle) tuple1.getValueByField(Vehicle.FIELD_NAME); Vehicle vehicle2 = (Vehicle) tuple2.getValueByField(Vehicle.FIELD_NAME); return Integer.compare(vehicle1.maxSpeed, vehicle2.maxSpeed); } }
protected T valueFromTuple(TridentTuple tuple) { // when there is no input field then the whole tuple is considered for comparison. Object value = null; if (inputFieldName != null && tuple != null) { value = tuple.getValueByField(inputFieldName); } else { value = tuple; } log.debug("value from tuple is [{}] with input field [{}] and tuple [{}]", value, inputFieldName, tuple); return (T) value; }
@Override public void updateState(WindowsState state, List<TridentTuple> tuples, TridentCollector collector) { Long currentTxId = state.getCurrentTxId(); LOG.debug("Removing triggers using WindowStateUpdater, txnId: [{}] ", currentTxId); for (TridentTuple tuple : tuples) { try { Object fieldValue = tuple.getValueByField(WindowTridentProcessor.TRIGGER_FIELD_NAME); if (!(fieldValue instanceof WindowTridentProcessor.TriggerInfo)) { throw new IllegalClassException(WindowTridentProcessor.TriggerInfo.class, fieldValue.getClass()); } WindowTridentProcessor.TriggerInfo triggerInfo = (WindowTridentProcessor.TriggerInfo) fieldValue; String triggerCompletedKey = WindowTridentProcessor.getWindowTriggerInprocessIdPrefix(triggerInfo.windowTaskId) + currentTxId; LOG.debug("Removing trigger key [{}] and trigger completed key [{}] from store: [{}]", triggerInfo, triggerCompletedKey, windowsStore); windowsStore.removeAll(Lists.newArrayList(triggerInfo.generateTriggerKey(), triggerCompletedKey)); } catch (Exception ex) { LOG.warn(ex.getMessage()); collector.reportError(ex); throw new FailedException(ex); } } }
@Override public int compare(TridentTuple t1, TridentTuple t2) { Comparable c1 = (Comparable) t1.getValueByField(_sortField); Comparable c2 = (Comparable) t2.getValueByField(_sortField); int ret = c1.compareTo(c2); if(_reverse) ret *= -1; return ret; } });
@Override public int compare(TridentTuple t1, TridentTuple t2) { Comparable c1 = (Comparable) t1.getValueByField(_sortField); Comparable c2 = (Comparable) t2.getValueByField(_sortField); int ret = c1.compareTo(c2); if (_reverse) ret *= -1; return ret; } });
@Override public int compare(TridentTuple t1, TridentTuple t2) { Comparable c1 = (Comparable) t1.getValueByField(_sortField); Comparable c2 = (Comparable) t2.getValueByField(_sortField); int ret = c1.compareTo(c2); if(_reverse) ret *= -1; return ret; } });
protected T valueFromTuple(TridentTuple tuple) { // when there is no input field then the whole tuple is considered for comparison. Object value = null; if (inputFieldName != null && tuple != null) { value = tuple.getValueByField(inputFieldName); } else { value = tuple; } log.debug("value from tuple is [{}] with input field [{}] and tuple [{}]", value, inputFieldName, tuple); return (T) value; }
@Override public void aggregate(State val, TridentTuple tuple, TridentCollector collector) { val.count++; for (String field : keepFields) val.fields.put(field, tuple.getValueByField(field)); }
@Override public boolean isKeep(TridentTuple tuple) { Content content = (Content) tuple.getValueByField("content"); return "url".equals(content.getContentType()); } }
@Override public void execute(TridentTuple tuple, TridentCollector tridentCollector) { try { String asString = new String((byte[]) tuple.getValueByField("bytes"), "UTF-8"); tridentCollector.emit(new Values(asString)); } catch (UnsupportedEncodingException e) { System.err.println("ERROR: lost data: unable to parse inbound message from Kafka (expecting UTF-8 string)"); e.printStackTrace(); } } }
@Override public void execute(TridentTuple tuple, TridentCollector collector) { Tweet possibleNeighbour = (Tweet) tuple.getValueByField("coltweet_obj"); Tweet newTweet = (Tweet) tuple.getValueByField("tweet_obj"); NearNeighbour possibleClosest = tools.computeCosineSimilarity(possibleNeighbour, newTweet); collector.emit(new Values(possibleClosest.getCosine())); }
public void execute(TridentTuple tuple, TridentCollector collector) { String jsonEvent = (String) tuple.getValueByField("rawOccupancyEvent"); if (jsonEvent != null && jsonEvent.length() > 0) { try { LocationChangedEvent event = getMapper().readValue(jsonEvent, LocationChangedEvent.class); System.out.println("emitting event " + event.getId()); collector.emit(new Values(event)); } catch (IOException e) { System.err.println("ERROR: lost data: unable to parse inbound message from Kafka (expecting UTF-8 string)"); e.printStackTrace(); } } }
@Override public void execute(TridentTuple objects, TridentCollector tridentCollector) { Content content = (Content) objects.getValueByField("content"); tridentCollector.emit(new Values(content.getTweetId())); } }
@Override public void execute(TridentTuple objects, TridentCollector tridentCollector) { Content content = (Content) objects.getValueByField("content"); tridentCollector.emit(new Values(content.getContentName())); } }
public void execute(TridentTuple tuple, TridentCollector collector) { LocationChangedEvent event = (LocationChangedEvent) tuple.getValueByField("occupancyEvent"); collector.emit(new Values(event.getCorrId())); } }
public void execute(TridentTuple tuple, TridentCollector collector) { RoomPresencePeriod periodEvent = (RoomPresencePeriod) tuple.getValueByField("presencePeriod"); for (Long roundStartTime : generateRoundPeriods(periodEvent.getStartTime(), periodEvent.getEndTme())) { collector.emit(new Values(periodEvent.getRoomId(), roundStartTime)); } }
@Override public void execute(TridentTuple tuple, TridentCollector collector) { NearNeighbour nn = (NearNeighbour) tuple.getValueByField("nn"); Long nnId = 0L; Double cosine = nn.getCosine(); Tweet nnTweet = nn.getTweet(); String nnText="Null text"; if (nnTweet!=null){ nnId = nnTweet.getID(); nnText = nnTweet.getBody(); } collector.emit(new Values(nnId, nnText, cosine)); }