diff options
Diffstat (limited to 'core/src/main/scala/com/softwaremill/sttp/model/package.scala')
-rw-r--r-- | core/src/main/scala/com/softwaremill/sttp/model/package.scala | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/core/src/main/scala/com/softwaremill/sttp/model/package.scala b/core/src/main/scala/com/softwaremill/sttp/model/package.scala new file mode 100644 index 0000000..00f1261 --- /dev/null +++ b/core/src/main/scala/com/softwaremill/sttp/model/package.scala @@ -0,0 +1,36 @@ +package com.softwaremill.sttp + +import java.io.{File, InputStream} +import java.nio.ByteBuffer +import java.nio.file.Path + +package object model { + case class Method(m: String) extends AnyVal + object Method { + val GET = Method("GET") + val HEAD = Method("HEAD") + val POST = Method("POST") + val PUT = Method("PUT") + val DELETE = Method("DELETE") + val OPTIONS = Method("OPTIONS") + val PATCH = Method("PATCH") + } + + sealed trait RequestBody + sealed trait BasicRequestBody extends RequestBody + case object NoBody extends RequestBody + case class StringBody(s: String) extends BasicRequestBody + case class ByteArrayBody(b: Array[Byte]) extends BasicRequestBody + case class ByteBufferBody(b: ByteBuffer) extends BasicRequestBody + case class InputStreamBody(b: InputStream) extends BasicRequestBody + case class InputStreamSupplierBody(b: () => InputStream) extends BasicRequestBody + case class FileBody(f: File) extends BasicRequestBody + case class PathBody(f: Path) extends BasicRequestBody + + sealed trait ResponseAs[T] + object IgnoreResponse extends ResponseAs[Unit] + case class ResponseAsString(encoding: String) extends ResponseAs[String] + object ResponseAsByteArray extends ResponseAs[Array[Byte]] + + case class ResponseAsStream[-S]() +} |