WebjarServiceBuilder

Value parameters:
cacheStrategy

strategy to use for caching purposes.

classLoader

optional classloader for extracting the resources

preferGzipped

prefer gzip compression format?

webjarAssetFilter

To filter which assets from the webjars should be served

Companion:
object
class Object
trait Matchable
class Any

Value members

Concrete methods

:Nothing<:Any]=>OptionT[F,_$7],Request[F],Response[F]](((x$1:Request[F])=>x$1match{ caserequestifrequest.method.==(Method.GET)=> valsegments:Vector[String]=request.pathInfo.segments.map[String](((_$2:Segment)=>_$2.decoded(_$2.decoded$default$1,plusIsSpace=true,_$2.decoded$default$3))) catsSyntaxApplicativeError[[A>:Nothing<:Any]=>OptionT[F,A],Throwable,Response[F]](OptionT.liftF[F,Path](F.catchNonFatal[Path](segments.foldLeft[Path](Root)(((`x$1₂`:Path,x$2:String)=>Tuple2.apply[Path,String](`x$1₂`,x$2)match{ caseTuple2(_,(""|"."|".."))=> throwBadTraversal caseTuple2(path,segment)=> path.resolve(segment) })))(refl[Throwable]))(F).subflatMap[WebjarAsset](((p:Path)=>WebjarServiceBuilder.this.toWebjarAsset(p)))(F).filter(webjarAssetFilter)(F).flatMap[Response[F]](((_$3:WebjarAsset)=>serveWebjarAsset[F](cacheStrategy,classLoader,request,preferGzipped)(_$3)(F)))(F))(catsDataMonadErrorForOptionT[F,Throwable](F)).recover(((`x$1₃`:Throwable)=>(`x$1₃`:@unchecked)match{ caseBadTraversal=> Response.apply[F](Status.BadRequest,Response.apply$default$2[F],Response.apply$default$3[F],Response.apply$default$4[F],Response.apply$default$5[F]) }))(catsDataMonadErrorForOptionT[F,Throwable](F)) case_=> OptionT.none[F,Response[F]](F) })) }" class="documentableAnchor">