mirror of
https://github.com/twitter/the-algorithm.git
synced 2024-06-01 08:48:46 +02:00
ef4c5eb65e
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.
30 lines
844 B
Scala
30 lines
844 B
Scala
package com.twitter.timelineranker.model
|
|
|
|
import com.twitter.timelineranker.{thriftscala => thrift}
|
|
|
|
object RankedTimelineQueryOptions {
|
|
def fromThrift(options: thrift.RankedTimelineQueryOptions): RankedTimelineQueryOptions = {
|
|
RankedTimelineQueryOptions(
|
|
seenEntries = options.seenEntries.map(PriorSeenEntries.fromThrift)
|
|
)
|
|
}
|
|
}
|
|
|
|
case class RankedTimelineQueryOptions(seenEntries: Option[PriorSeenEntries])
|
|
extends TimelineQueryOptions {
|
|
|
|
throwIfInvalid()
|
|
|
|
def toThrift: thrift.RankedTimelineQueryOptions = {
|
|
thrift.RankedTimelineQueryOptions(seenEntries = seenEntries.map(_.toThrift))
|
|
}
|
|
|
|
def toTimelineQueryOptionsThrift: thrift.TimelineQueryOptions = {
|
|
thrift.TimelineQueryOptions.RankedTimelineQueryOptions(toThrift)
|
|
}
|
|
|
|
def throwIfInvalid(): Unit = {
|
|
seenEntries.foreach(_.throwIfInvalid)
|
|
}
|
|
}
|