summaryrefslogtreecommitdiff
path: root/cask/src/cask/endpoints/StaticEndpoints.scala
diff options
context:
space:
mode:
Diffstat (limited to 'cask/src/cask/endpoints/StaticEndpoints.scala')
-rw-r--r--cask/src/cask/endpoints/StaticEndpoints.scala19
1 files changed, 17 insertions, 2 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)