@@ -12,11 +12,9 @@ import org.joda.time.format.DateTimeFormat
1212import play .api .http .HttpEntity
1313import play .api .i18n .{MessagesApi , Lang }
1414import play .api .mvc ._
15- import scala .concurrent .Future
15+ import scala .concurrent .{ ExecutionContext , Future }
1616import scala .concurrent .duration ._
1717
18- import play .api .libs .MimeTypes
19- import play .api .libs .concurrent .Execution .Implicits .defaultContext
2018
2119import scala .reflect .ClassTag
2220
@@ -25,9 +23,8 @@ class DocumentationController @Inject()(
2523 messages : MessagesApi ,
2624 documentationRedirects : DocumentationRedirects ,
2725 @ Named (" documentation-actor" ) documentationActor : ActorRef ,
28- releases : PlayReleases ) extends Controller {
29-
30- import DocumentationController ._
26+ releases : PlayReleases ,
27+ components : ControllerComponents )(implicit executionContext : ExecutionContext , reverseRouter : ReverseRouter ) extends AbstractController (components) {
3128
3229 private implicit val timeout = Timeout (5 .seconds)
3330
@@ -114,7 +111,7 @@ class DocumentationController @Inject()(
114111 //
115112
116113 def v1Home (lang : Option [Lang ], version : String ) = Action {
117- Redirect (ReverseRouter .page(lang, version, " home" ))
114+ Redirect (reverseRouter .page(lang, version, " home" ))
118115 }
119116
120117 def v1Page (lang : Option [Lang ], v : String , page : String ) = VersionAction (v) { (actor, version) => implicit req =>
@@ -156,7 +153,7 @@ class DocumentationController @Inject()(
156153 //
157154
158155 def home (lang : Option [Lang ], version : String ) = Action {
159- Redirect (ReverseRouter .page(lang, version, " Home " ))
156+ Redirect (reverseRouter .page(lang, version))
160157 }
161158
162159 def page (lang : Option [Lang ], v : String , page : String ) = VersionAction (v) { (actor, version) => implicit req =>
@@ -170,7 +167,7 @@ class DocumentationController @Inject()(
170167 documentationRedirects.redirectFor(page) match {
171168 case Some (redirect) =>
172169 pageExists(version, redirect.to).map {
173- case Some (_) => Results .MovedPermanently (ReverseRouter .page(lang, v, redirect.to))
170+ case Some (_) => Results .MovedPermanently (reverseRouter .page(lang, v, redirect.to))
174171 case None => Results .MovedPermanently (redirect.to)
175172 }
176173 case None =>
@@ -192,14 +189,14 @@ class DocumentationController @Inject()(
192189
193190 // -- API
194191 def v1Api (lang : Option [Lang ], version : String ) = Action {
195- Redirect (ReverseRouter .api(version, " index.html" ))
192+ Redirect (reverseRouter .api(version, " index.html" ))
196193 }
197194
198195 def api (lang : Option [Lang ], v : String , path : String ) =
199196 ResourceAction (v, path, (version, etag) => LoadApi (version, etag, path))
200197
201198 def apiRedirect (lang : Option [Lang ], version : String , path : String ) =
202- Action (MovedPermanently (ReverseRouter .api(version, path)))
199+ Action (MovedPermanently (reverseRouter .api(version, path)))
203200
204201 // -- Latest
205202
@@ -229,7 +226,7 @@ class DocumentationController @Inject()(
229226 }
230227 }
231228 version.map { v =>
232- val url = ReverseRouter .home(selectedLang, v.name)
229+ val url = reverseRouter .home(selectedLang, v.name)
233230 Redirect (s " $url/ $path" ).withHeaders(VARY -> ACCEPT_LANGUAGE )
234231 }.getOrElse(pageNotFound(summary.translationContext, path, Nil ))
235232 }
@@ -259,7 +256,7 @@ class DocumentationController @Inject()(
259256 } else {
260257 Seq (CONTENT_DISPOSITION -> s """ attachment; filename=" $fileName" """ )
261258 }
262- val entity = HttpEntity .Streamed (source, Some (size), Some (MimeTypes .forFileName(fileName).getOrElse(BINARY )))
259+ val entity = HttpEntity .Streamed (source, Some (size), Some (fileMimeTypes .forFileName(fileName).getOrElse(BINARY )))
263260 cacheable(Ok .sendEntity(entity).withHeaders(contentDisposition : _* ), cacheId)
264261 }
265262 }
@@ -284,17 +281,17 @@ class DocumentationController @Inject()(
284281 VersionAction (v) { (actor, version) => implicit req =>
285282 actorRequest(actor, page, msg(lang, version, etag(req), page)) {
286283 case PageExists (true , cacheId) =>
287- cacheable(TemporaryRedirect (ReverseRouter .page(lang, version.name, page)), cacheId)
284+ cacheable(TemporaryRedirect (reverseRouter .page(lang, version.name, page)), cacheId)
288285 case PageExists (false , cacheId) =>
289- cacheable(TemporaryRedirect (ReverseRouter .page(lang, version.name, home)), cacheId)
286+ cacheable(TemporaryRedirect (reverseRouter .page(lang, version.name, home)), cacheId)
290287 }
291288 }
292289 }
293290
294291 def withLangHeaders (result : Result , page : String , context : TranslationContext )(implicit req : RequestHeader ) = {
295292 val linkHeader = context.alternatives.filterNot(_.lang == context.lang).collect {
296293 case AlternateTranslation (l, isDefault, Some (v)) =>
297- val url = Call (" GET" , ReverseRouter .page(Some (l).filterNot(_ => isDefault), v.name, page)).absoluteURL()
294+ val url = Call (" GET" , reverseRouter .page(Some (l).filterNot(_ => isDefault), v.name, page)).absoluteURL()
298295 s """ < $url>; rel="alternate"; hreflang=" ${l.code}" """
299296 }.mkString(" , " )
300297 if (linkHeader.nonEmpty) {
0 commit comments