Skip to content

Instantly share code, notes, and snippets.

@nambrot
Created December 2, 2017 23:35
Show Gist options
  • Save nambrot/32281aa769a94616085d5a435da320e8 to your computer and use it in GitHub Desktop.
Save nambrot/32281aa769a94616085d5a435da320e8 to your computer and use it in GitHub Desktop.
val filteredEvents: KStream[Integer, (HeartRateEvent, BloodPressureEvent)] =
combinedEvents
.filter((userId: Integer, tuple: (Option[HeartRateEvent], Option[BloodPressureEvent])) => {
(userId, tuple) match {
case (_, (Some(hrEvent: HeartRateEvent), Some(bpEvent: BloodPressureEvent))) =>
hrEvent.heartRate > 100 && bpEvent.systolic < 100
case _ => false
}
}).mapValues {
case (Some(hrEvent: HeartRateEvent), Some(bpEvent: BloodPressureEvent)) => (hrEvent, bpEvent)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment