diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2018-08-13 21:11:11 +0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2018-08-13 22:13:48 +0800 |
commit | e74ade7ac9bfff9239c0243c0fdf01b18d4a0ec3 (patch) | |
tree | 9589f3840df5203b60be89efa878d3c2ee678af0 /cask/src/cask/endpoints | |
parent | b1d516e2b7df2d881c4dc84840e1cdc475b845b5 (diff) | |
download | cask-e74ade7ac9bfff9239c0243c0fdf01b18d4a0ec3.tar.gz cask-e74ade7ac9bfff9239c0243c0fdf01b18d4a0ec3.tar.bz2 cask-e74ade7ac9bfff9239c0243c0fdf01b18d4a0ec3.zip |
0.1.00.1.0
Diffstat (limited to 'cask/src/cask/endpoints')
-rw-r--r-- | cask/src/cask/endpoints/StaticEndpoints.scala | 19 | ||||
-rw-r--r-- | cask/src/cask/endpoints/WebSocketEndpoint.scala | 2 |
2 files changed, 18 insertions, 3 deletions
diff --git a/cask/src/cask/endpoints/StaticEndpoints.scala b/cask/src/cask/endpoints/StaticEndpoints.scala index 726af21..1d66b2c 100644 --- a/cask/src/cask/endpoints/StaticEndpoints.scala +++ b/cask/src/cask/endpoints/StaticEndpoints.scala @@ -3,14 +3,29 @@ package cask.endpoints import cask.main.Endpoint import cask.model.ParamContext -class static(val path: String) extends Endpoint{ +class staticFiles(val path: String) extends Endpoint{ type Output = String val methods = Seq("get") type Input = Seq[String] type InputParser[T] = QueryParamReader[T] override def subpath = true def wrapFunction(ctx: ParamContext, delegate: Delegate): Returned = { - delegate(Map()).map(t => cask.model.Static(t + "/" + ctx.remaining.mkString("/"))) + delegate(Map()).map(t => cask.model.StaticFile(t + "/" + ctx.remaining.mkString("/"))) + } + + def wrapPathSegment(s: String): Input = Seq(s) +} + +class staticResources(val path: String, resourceRoot: ClassLoader = getClass.getClassLoader) extends Endpoint{ + type Output = String + val methods = Seq("get") + type Input = Seq[String] + type InputParser[T] = QueryParamReader[T] + override def subpath = true + def wrapFunction(ctx: ParamContext, delegate: Delegate): Returned = { + delegate(Map()).map(t => + cask.model.StaticResource(t + "/" + ctx.remaining.mkString("/"), resourceRoot) + ) } def wrapPathSegment(s: String): Input = Seq(s) diff --git a/cask/src/cask/endpoints/WebSocketEndpoint.scala b/cask/src/cask/endpoints/WebSocketEndpoint.scala index a795afd..89c05b9 100644 --- a/cask/src/cask/endpoints/WebSocketEndpoint.scala +++ b/cask/src/cask/endpoints/WebSocketEndpoint.scala @@ -38,7 +38,7 @@ object WebsocketResult{ implicit class Listener(val value: WebSocketConnectionCallback) extends WebsocketResult } -class websocket(val path: String, subpath: Boolean = false) extends cask.main.BaseEndpoint{ +class websocket(val path: String, override val subpath: Boolean = false) extends cask.main.BaseEndpoint{ type Output = WebsocketResult val methods = Seq("websocket") type Input = Seq[String] |