mirror of
https://github.com/twitter/the-algorithm.git
synced 2024-06-23 19:46:05 +02:00
![twitter-team](/assets/img/avatar_default.png)
Please note we have force-pushed a new initial commit in order to remove some publicly-available Twitter user information. Note that this process may be required in the future.
22 lines
923 B
Scala
22 lines
923 B
Scala
package com.twitter.home_mixer.marshaller.timelines
|
|
|
|
import com.twitter.product_mixer.component_library.model.cursor.UrtOrderedCursor
|
|
import com.twitter.product_mixer.core.model.marshalling.response.urt.operation.BottomCursor
|
|
import com.twitter.product_mixer.core.model.marshalling.response.urt.operation.GapCursor
|
|
import com.twitter.product_mixer.core.model.marshalling.response.urt.operation.TopCursor
|
|
import com.twitter.timelineservice.{thriftscala => t}
|
|
|
|
object TimelineServiceCursorMarshaller {
|
|
|
|
def apply(cursor: UrtOrderedCursor): Option[t.Cursor2] = {
|
|
val id = cursor.id.map(_.toString)
|
|
val gapBoundaryId = cursor.gapBoundaryId.map(_.toString)
|
|
cursor.cursorType match {
|
|
case Some(TopCursor) => Some(t.Cursor2(bottom = id))
|
|
case Some(BottomCursor) => Some(t.Cursor2(top = id))
|
|
case Some(GapCursor) => Some(t.Cursor2(top = id, bottom = gapBoundaryId))
|
|
case _ => None
|
|
}
|
|
}
|
|
}
|