Define the PartialFunction that will map acceptable content types to FeedMarshallers.
Define the PartialFunction that will map acceptable content types to FeedMarshallers.
For instance:
// supports XML and JSON and used predefined FeedMarshallers override def marshallers = { case Accepts.Xml() => JaxbFeedMarshaller[String]() case Accepts.Json() => PlayJsonFeedMarshaller[String]() }
or in case a specifc content types is need...
// supports XML and JSON and used predefined FeedMarshallers override def marshallers = { case Accepts.Xml() => JaxbFeedMarshaller[String]("application/my-api-v1.0+xml") case Accepts.Json() => PlayJsonFeedMarshaller[String]("application/my-api-v1.0+json") }
PartialFunction[MediaRange, FeedMarshaller]
marshall the feed and set correct headers
marshall the feed and set correct headers
the optional page of the feed
the implicit codec
the response
trait supporting serving of feed pages: sets correct caching headers sets ETag and Last-Modified response headers and responds with Not-Modified if needed to reduce bandwidth supports content-negotiation and responds with either JSON or XML depending on registered marshallers
the type of the feed entries²