Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private func makeAnalyticsEventOnRidesUpdated(with taxiRidesCount: Int, upcomingRidesCount: Int) -> AnalyticsEvent? {
- guard shouldMakeLandingRidesViewAnalyticsEvent == false else {
- shouldMakeLandingRidesViewAnalyticsEvent = false
- return .landingRidesView(numTaxiCards: taxiRidesCount, numRideCards: upcomingRidesCount)
- }
- let lastRideCounts: (Int, Int)
- switch lastLoggedRidesUpdatedEvent {
- case .landingRidesView(let numTaxiCards, let numRideCards),
- .rideCardsUpdated(let numTaxiCards, let numRideCards):
- lastRideCounts = (numTaxiCards, numRideCards)
- default: lastRideCounts = (-1, -1)
- }
- guard lastRideCounts != (taxiRidesCount, upcomingRidesCount) else { return nil }
- return .rideCardsUpdated(numTaxiCards: taxiRidesCount, numRideCards: upcomingRidesCount)
- }
- private func logAnalyticsEventOnRidesUpdated(with taxiRidesCount: Int, upcomingRidesCount: Int) {
- guard let newAnalyticsEvent = makeAnalyticsEventOnRidesUpdated(with: taxiRidesCount,
- upcomingRidesCount: upcomingRidesCount) else { return }
- analyticsManager.log(event: newAnalyticsEvent)
- lastLoggedRidesUpdatedEvent = newAnalyticsEvent
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement