Packages

t

net.liftweb.http.rest

RestHelper

trait RestHelper extends DispatchPF

Mix this trait into a class to provide a list of REST helper methods

Linear Supertypes
PartialFunction[Req, () => Box[LiftResponse]], (Req) => () => Box[LiftResponse], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RestHelper
  2. PartialFunction
  3. Function1
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class AutoJsonXmlAble(obj: Any) extends Product with Serializable

    The class that wraps anything for auto conversion to JSON or XML

    The class that wraps anything for auto conversion to JSON or XML

    Attributes
    protected
  2. trait JsonBody extends AnyRef

    a trait that extracts the JSON body from a request It is composed with a TestXXX to get the correct thing for the extractor

    a trait that extracts the JSON body from a request It is composed with a TestXXX to get the correct thing for the extractor

    Attributes
    protected
  3. trait JsonTest extends AnyRef
    Attributes
    protected
  4. type JxCvtPF[T] = PartialFunction[(JsonXmlSelect, T, Req), LiftResponse]
    Attributes
    protected
  5. trait TestDelete extends AnyRef

    A trait that defines the TestDelete extractor.

    A trait that defines the TestDelete extractor. Is the request a DELETE and something that expects JSON or XML in the response. Subclass this trait to change the behavior

    Attributes
    protected
  6. trait TestGet extends AnyRef

    A trait that defines the TestGet extractor.

    A trait that defines the TestGet extractor. Is the request a GET and something that expects JSON or XML in the response. Subclass this trait to change the behavior

    Attributes
    protected
  7. trait TestPatch[T] extends AnyRef

    A trait that defines the TestPatch extractor.

    A trait that defines the TestPatch extractor. Is the request a PATCH, has JSON or XML data in the post body and something that expects JSON or XML in the response. Subclass this trait to change the behavior

    Attributes
    protected
  8. trait TestPost[T] extends AnyRef

    A trait that defines the TestPost extractor.

    A trait that defines the TestPost extractor. Is the request a POST, has JSON or XML data in the post body and something that expects JSON or XML in the response. Subclass this trait to change the behavior

    Attributes
    protected
  9. trait TestPut[T] extends AnyRef

    A trait that defines the TestPut extractor.

    A trait that defines the TestPut extractor. Is the request a PUT, has JSON or XML data in the put body and something that expects JSON or XML in the response. Subclass this trait to change the behavior

    Attributes
    protected
  10. trait TestReq extends AnyRef

    A trait that defines the TestReq extractor.

    A trait that defines the TestReq extractor. Is the request something that expects JSON, XML in the response. Subclass this trait to change the behavior

    Attributes
    protected
  11. trait XmlBody extends AnyRef

    a trait that extracts the XML body from a request It is composed with a TestXXX to get the correct thing for the extractor

    a trait that extracts the XML body from a request It is composed with a TestXXX to get the correct thing for the extractor

    Attributes
    protected
  12. trait XmlTest extends AnyRef
    Attributes
    protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. lazy val JsonDelete: TestDelete with JsonTest

    The stable identifier for JsonDelete.

    The stable identifier for JsonDelete. You can use it as an extractor.

    Attributes
    protected
  5. lazy val JsonGet: TestGet with JsonTest

    The stable identifier for JsonGet.

    The stable identifier for JsonGet. You can use it as an extractor.

    Attributes
    protected
  6. lazy val JsonPatch: TestPatch[JValue] with JsonTest with JsonBody

    The stable identifier for JsonPatch.

    The stable identifier for JsonPatch. You can use it as an extractor.

    Attributes
    protected
  7. lazy val JsonPost: TestPost[JValue] with JsonTest with JsonBody

    The stable identifier for JsonPost.

    The stable identifier for JsonPost. You can use it as an extractor.

    Attributes
    protected
  8. lazy val JsonPut: TestPut[JValue] with JsonTest with JsonBody

    The stable identifier for JsonPut.

    The stable identifier for JsonPut. You can use it as an extractor.

    Attributes
    protected
  9. lazy val JsonReq: TestReq with JsonTest

    The stable identifier for JsonReq.

    The stable identifier for JsonReq. You can use it as an extractor.

    Attributes
    protected
  10. lazy val XmlDelete: TestDelete with XmlTest

    The stable identifier for XmlDelete.

    The stable identifier for XmlDelete. You can use it as an extractor.

    Attributes
    protected
  11. lazy val XmlGet: TestGet with XmlTest

    The stable identifier for XmlGet.

    The stable identifier for XmlGet. You can use it as an extractor.

    Attributes
    protected
  12. lazy val XmlPatch: TestPatch[Elem] with XmlTest with XmlBody

    The stable identifier for XmlPatch.

    The stable identifier for XmlPatch. You can use it as an extractor.

    Attributes
    protected
  13. lazy val XmlPost: TestPost[Elem] with XmlTest with XmlBody

    The stable identifier for XmlPost.

    The stable identifier for XmlPost. You can use it as an extractor.

    Attributes
    protected
  14. lazy val XmlPut: TestPut[Elem] with XmlTest with XmlBody

    The stable identifier for XmlPut.

    The stable identifier for XmlPut. You can use it as an extractor.

    Attributes
    protected
  15. lazy val XmlReq: TestReq with XmlTest

    The stable identifier for XmlReq.

    The stable identifier for XmlReq. You can use it as an extractor.

    Attributes
    protected
  16. def andThen[C](k: PartialFunction[() => Box[LiftResponse], C]): PartialFunction[Req, C]
    Definition Classes
    PartialFunction
  17. def andThen[C](k: (() => Box[LiftResponse]) => C): PartialFunction[Req, C]
    Definition Classes
    PartialFunction → Function1
  18. def anyToJValue(in: Any): Box[JValue]

    Take any value and convert it into a JValue.

    Take any value and convert it into a JValue. Full box if it works, empty if it does

    Attributes
    protected
  19. def apply(in: Req): () => Box[LiftResponse]

    Apply the Rest helper

    Apply the Rest helper

    Definition Classes
    RestHelper → Function1
  20. def applyOrElse[A1 <: Req, B1 >: () => Box[LiftResponse]](x: A1, default: (A1) => B1): B1
    Definition Classes
    PartialFunction
  21. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  22. implicit def asyncBoxToResponse[AsyncResolvableType, T](asyncBoxContainer: AsyncResolvableType)(implicit asyncResolveProvider: CanResolveAsync[AsyncResolvableType, Box[T]], responseCreator: (T) => LiftResponse): () => Box[LiftResponse]

    If we're returning a future, then automatically turn the request into an Async request

    If we're returning a future, then automatically turn the request into an Async request

    T

    the type

    returns

    Nothing

    Attributes
    protected
  23. implicit def asyncToResponse[AsyncResolvableType, T](asyncContainer: AsyncResolvableType)(implicit asyncResolveProvider: CanResolveAsync[AsyncResolvableType, T], responseCreator: (T) => LiftResponse): () => Box[LiftResponse]

    If we're returning a future, then automatically turn the request into an Async request

    If we're returning a future, then automatically turn the request into an Async request

    T

    the type

    returns

    Nothing

    Attributes
    protected
  24. def auto(in: Box[Any]): Box[AutoJsonXmlAble]

    Wrap a Box of anything for autoconversion to JSON or XML

    Wrap a Box of anything for autoconversion to JSON or XML

    Attributes
    protected
  25. def auto(in: Any): Box[AutoJsonXmlAble]

    wrap anything for autoconversion to JSON or XML

    wrap anything for autoconversion to JSON or XML

    Attributes
    protected
  26. implicit def boxFuncToResp[T](in: () => Box[T])(implicit c: (T) => LiftResponse): () => Box[LiftResponse]

    Turn a () => Box[T] into the return type expected by DispatchPF.

    Turn a () => Box[T] into the return type expected by DispatchPF. Note that this method will return messages from Failure() and return codes and messages from ParamFailure[Int[(msg, _, _, code)

    Attributes
    protected
  27. implicit def boxToResp[T](in: Box[T])(implicit c: (T) => LiftResponse): () => Box[LiftResponse]

    Turn a Box[T] into the return type expected by DispatchPF.

    Turn a Box[T] into the return type expected by DispatchPF. Note that this method will return messages from Failure() and return codes and messages from ParamFailure[Int[(msg, _, _, code)

    Attributes
    protected
  28. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  29. def compose[R](k: PartialFunction[R, Req]): PartialFunction[R, () => Box[LiftResponse]]
    Definition Classes
    PartialFunction
  30. def compose[A](g: (A) => Req): (A) => () => Box[LiftResponse]
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  31. implicit lazy val convertAutoJsonXmlAble: PartialFunction[(JsonXmlSelect, AutoJsonXmlAble, Req), LiftResponse]

    An implicit conversion that converts AutoJsonXmlAble into JSON or XML

    An implicit conversion that converts AutoJsonXmlAble into JSON or XML

    Attributes
    protected
  32. implicit lazy val convertJsonXmlAble: PartialFunction[(JsonXmlSelect, JsonXmlAble, Req), LiftResponse]

    The default way to convert a JsonXmlAble into JSON or XML

    The default way to convert a JsonXmlAble into JSON or XML

    Attributes
    protected
  33. def createXmlResponse(in: Node): LiftResponse

    Override this method to create an AppXmlResponse with the mime type application/xml rather then text/xml

    Override this method to create an AppXmlResponse with the mime type application/xml rather then text/xml

    Attributes
    protected
  34. def defaultGetAsJson: Boolean

    If the headers and the suffix say nothing about the response type, should we default to JSON.

    If the headers and the suffix say nothing about the response type, should we default to JSON. By default, yes, override to change the behavior.

    Attributes
    protected
  35. def defaultGetAsXml: Boolean

    If the headers and the suffix say nothing about the response type, should we default to XML.

    If the headers and the suffix say nothing about the response type, should we default to XML. By default, no, override to change the behavior.

    Attributes
    protected
  36. def elementWise: ElementWiseExtractor[Req, () => Box[LiftResponse]]
    Definition Classes
    PartialFunction
  37. def emptyToResp(eb: EmptyBox): Box[LiftResponse]
    Attributes
    protected
  38. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  39. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  40. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  41. implicit def formats: Formats

    Return the implicit Formats instance for JSON conversion

    Return the implicit Formats instance for JSON conversion

    Attributes
    protected
  42. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  43. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  44. def isDefinedAt(in: Req): Boolean

    Is the Rest helper defined for a given request

    Is the Rest helper defined for a given request

    Definition Classes
    RestHelper → PartialFunction
  45. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  46. implicit def jsCmdToResp(in: JsCmd): LiftResponse

    Convert a JsCmd to a LiftResponse

  47. implicit def jsExpToResp(in: JsExp): LiftResponse

    Convert a JsExp to a LiftResponse

  48. def jsonResponse_?(in: Req): Boolean

    Will the request accept a JSON response? Yes if the Accept header contains "text/json", "application/json" or the Accept header is missing or contains "star/star" and the suffix is "json".

    Will the request accept a JSON response? Yes if the Accept header contains "text/json", "application/json" or the Accept header is missing or contains "star/star" and the suffix is "json". Override this method to provide your own logic. If there's no suffix, no accepts (or it's "star/star") then look to either the Content-Type header or the defaultGetAsJson flag

    Attributes
    protected
  49. implicit def jsonToResp(in: JValue): LiftResponse

    Convert a JValue to a LiftResponse

  50. implicit def jxSel(req: Req): BoxOrRaw[JsonXmlSelect]

    A function that chooses JSON or XML based on the request..

    A function that chooses JSON or XML based on the request.. Use with serveType

  51. def lift: (Req) => Option[() => Box[LiftResponse]]
    Definition Classes
    PartialFunction
  52. implicit def listStringToSuper(in: List[String]): SuperListString

    returns

    a SuperString with more available methods such as roboSplit or commafy

    Attributes
    protected
  53. implicit def listToServeMagic(in: List[String]): ListServeMagic

    Allows you to use >> after a path list to handle all the cases where you have a prefix for a series of differ suffixes with the same path prefix.

    Allows you to use >> after a path list to handle all the cases where you have a prefix for a series of differ suffixes with the same path prefix. For example: serve("foo" / "bar" >> { case baz :: Nil Post _ => ... case Nil Get _ => ... })

    Attributes
    protected
  54. def mergeJson(original: JValue, toMerge: JValue): JValue

    Take an original piece of JSON (most probably, JObject and replace all the JFields with those in toMerge

    Take an original piece of JSON (most probably, JObject and replace all the JFields with those in toMerge

    Attributes
    protected
  55. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  56. implicit def nodeToResp(in: Node): LiftResponse

    Convert a Node to an XmlResponse

    Convert a Node to an XmlResponse

    Attributes
    protected
  57. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  58. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  59. implicit def optionFuncToResp[T](in: () => Option[T])(implicit c: (T) => LiftResponse): () => Box[LiftResponse]

    Turn an Option[T] into the return type expected by DispatchPF.

    Turn an Option[T] into the return type expected by DispatchPF.

    Attributes
    protected
  60. implicit def optionToResp[T](in: Option[T])(implicit c: (T) => LiftResponse): () => Box[LiftResponse]

    Turn an Option[T] into the return type expected by DispatchPF.

    Turn an Option[T] into the return type expected by DispatchPF.

    Attributes
    protected
  61. def orElse[A1 <: Req, B1 >: () => Box[LiftResponse]](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]
    Definition Classes
    PartialFunction
  62. def runWith[U](action: (() => Box[LiftResponse]) => U): (Req) => Boolean
    Definition Classes
    PartialFunction
  63. def serve(handler: PartialFunction[Req, () => Box[LiftResponse]]): Unit

    Add request handlers

    Add request handlers

    Attributes
    protected
  64. def serveJx[T](pf: PartialFunction[Req, BoxOrRaw[T]])(implicit cvt: JxCvtPF[T]): Unit

    Serve a request returning either JSON or XML.

    Serve a request returning either JSON or XML.

    pf

    -- a Partial Function that converts the request into an intermediate response.

    cvt

    -- convert the intermediate response to a LiftResponse based on the request being for XML or JSON. If T is JsonXmlAble, there are built-in converters. Further, you can return auto(thing) and that will invoke built-in converters as well. The built-in converters use Lift JSON's Extraction.decompose to convert the object into JSON and then Xml.toXml() to convert to XML.

    Attributes
    protected
  65. def serveJxa(pf: PartialFunction[Req, BoxOrRaw[Any]]): Unit

    Serve a request returning either JSON or XML.

    Serve a request returning either JSON or XML.

    pf

    -- a Partial Function that converts the request into Any (note that the response must be convertable into JSON vis Lift JSON Extraction.decompose

    Attributes
    protected
  66. def serveType[T, SelectType](selection: (Req) => BoxOrRaw[SelectType])(pf: PartialFunction[Req, BoxOrRaw[T]])(implicit cvt: PartialFunction[(SelectType, T, Req), LiftResponse]): Unit

    Serve a given request by determining the request type, computing the response and then converting the response to the given type (e.g., JSON or XML).



    Serve a given request by determining the request type, computing the response and then converting the response to the given type (e.g., JSON or XML).

    selection

    -- a function that determines the response type based on the Req.

    pf

    -- a PartialFunction that converts the request to a response type (e.g., a case class that contains the response).

    cvt

    -- a function that converts from the response type to a the appropriate LiftResponse based on the selected response type.

    Attributes
    protected
  67. implicit def stringToSuper(in: String): SuperString

    returns

    a SuperString with more available methods such as roboSplit or commafy

    Attributes
    protected
  68. def suplimentalJsonResponse_?(in: Req): Boolean

    If there are additional custom rules (e.g., looking at query parameters) you can override this method which is consulted if the other rules in jsonResponse_? fail

    If there are additional custom rules (e.g., looking at query parameters) you can override this method which is consulted if the other rules in jsonResponse_? fail

    Attributes
    protected
  69. def suplimentalXmlResponse_?(in: Req): Boolean

    If there are additional custom rules (e.g., looking at query parameters) you can override this method which is consulted if the other rules in xmlResponse_? fail

    If there are additional custom rules (e.g., looking at query parameters) you can override this method which is consulted if the other rules in xmlResponse_? fail

    Attributes
    protected
  70. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  71. implicit def thingToResp[T](in: T)(implicit c: (T) => LiftResponse): () => Box[LiftResponse]

    Turn T into the return type expected by DispatchPF as long as we can convert T to a LiftResponse.

    Turn T into the return type expected by DispatchPF as long as we can convert T to a LiftResponse.

    Attributes
    protected
  72. def toString(): String
    Definition Classes
    Function1 → AnyRef → Any
  73. def unapply(a: Req): Option[() => Box[LiftResponse]]
    Definition Classes
    PartialFunction
  74. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  75. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  76. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  77. def xmlResponse_?(in: Req): Boolean

    Will the request accept an XML response? Yes if the Accept header contains "application/xml" or "text/xml" or the Accept header is missing or contains "star/star" and the suffix is "xml".

    Will the request accept an XML response? Yes if the Accept header contains "application/xml" or "text/xml" or the Accept header is missing or contains "star/star" and the suffix is "xml". Override this method to provide your own logic. If there's no suffix, no accepts (or it's "star/star") then look to either the Content-Type header or the defaultGetAsXml flag.

    Attributes
    protected
  78. object ->

    Extract a Pair using the same syntax that you use to make a Pair

    Extract a Pair using the same syntax that you use to make a Pair

    Attributes
    protected
  79. object Delete

    An extractor that tests the request to see if it's a DELETE and if it is, the path and the request are extracted.

    An extractor that tests the request to see if it's a DELETE and if it is, the path and the request are extracted. It can be used as:

    case "api" :: id :: _ Delete req => ...
    

    or
    case Delete("api" :: id :: _, req) => ...
    

    case Delete("api" :: id :: _, req) => ...

    case "api" :: id :: _ Delete req => ... or

    case Delete("api" :: id :: _, req) => ...
    

    case Delete("api" :: id :: _, req) => ...

    Attributes
    protected
  80. object Get

    An extractor that tests the request to see if it's a GET and if it is, the path and the request are extracted.

    An extractor that tests the request to see if it's a GET and if it is, the path and the request are extracted. It can be used as:

    case "api" :: id :: _ Get req => ...
    

    or
    case Get("api" :: id :: _, req) => ...
    

    *

    case Get("api" :: id :: _, req) => ...

    case "api" :: id :: _ Get req => ... or

    case Get("api" :: id :: _, req) => ...
    

    *

    case Get("api" :: id :: _, req) => ...

    Attributes
    protected
  81. object Options

    An extractor that tests the request to see if it's an OPTIONS and if it is, the path and the request are extracted.

    An extractor that tests the request to see if it's an OPTIONS and if it is, the path and the request are extracted. It can be used as:

    case "api" :: id :: _ Options req => ...
    

    or
    case Options("api" :: id :: _, req) => ...
    

    *

    case Options("api" :: id :: _, req) => ...

    case "api" :: id :: _ Options req => ... or

    case Options("api" :: id :: _, req) => ...
    

    *

    case Options("api" :: id :: _, req) => ...

    Attributes
    protected
  82. object Patch

    An extractor that tests the request to see if it's a PATCH and if it is, the path and the request are extracted.

    An extractor that tests the request to see if it's a PATCH and if it is, the path and the request are extracted. It can be used as:

    case "api" :: id :: _ Patch req => ...
    

    or
    case Patch("api" :: id :: _, req) => ...
    

    case Patch("api" :: id :: _, req) => ...

    case "api" :: id :: _ Patch req => ... or

    case Patch("api" :: id :: _, req) => ...
    

    case Patch("api" :: id :: _, req) => ...

    Attributes
    protected
  83. object Post

    An extractor that tests the request to see if it's a POST and if it is, the path and the request are extracted.

    An extractor that tests the request to see if it's a POST and if it is, the path and the request are extracted. It can be used as:

    case "api" :: id :: _ Post req => ...
    

    or
    case Post("api" :: id :: _, req) => ...
    

    case Post("api" :: id :: _, req) => ...

    case "api" :: id :: _ Post req => ... or

    case Post("api" :: id :: _, req) => ...
    

    case Post("api" :: id :: _, req) => ...

    Attributes
    protected
  84. object Put

    An extractor that tests the request to see if it's a PUT and if it is, the path and the request are extracted.

    An extractor that tests the request to see if it's a PUT and if it is, the path and the request are extracted. It can be used as:

    case "api" :: id :: _ Put req => ...
    

    or
    case Put("api" :: id :: _, req) => ...
    

    case Put("api" :: id :: _, req) => ...

    case "api" :: id :: _ Put req => ... or

    case Put("api" :: id :: _, req) => ...
    

    case Put("api" :: id :: _, req) => ...

    Attributes
    protected

Inherited from PartialFunction[Req, () => Box[LiftResponse]]

Inherited from (Req) => () => Box[LiftResponse]

Inherited from AnyRef

Inherited from Any

Ungrouped