aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradamw <adam@warski.org>2018-03-01 21:05:23 +0100
committeradamw <adam@warski.org>2018-03-01 21:05:23 +0100
commitb4d62b81f26b90da9ea4540c4903b84722379e62 (patch)
treee81bb261fd019c8b6f30c6b911316db4287a1cfa
parent61eb81faf583eaafb0aee4620cd2df9ad5833abd (diff)
downloadsttp-b4d62b81f26b90da9ea4540c4903b84722379e62.tar.gz
sttp-b4d62b81f26b90da9ea4540c4903b84722379e62.tar.bz2
sttp-b4d62b81f26b90da9ea4540c4903b84722379e62.zip
Additional asFile() constructor
-rw-r--r--core/src/main/scala/com/softwaremill/sttp/ResponseAs.scala4
-rw-r--r--core/src/main/scala/com/softwaremill/sttp/package.scala3
2 files changed, 6 insertions, 1 deletions
diff --git a/core/src/main/scala/com/softwaremill/sttp/ResponseAs.scala b/core/src/main/scala/com/softwaremill/sttp/ResponseAs.scala
index 2916043..084ab50 100644
--- a/core/src/main/scala/com/softwaremill/sttp/ResponseAs.scala
+++ b/core/src/main/scala/com/softwaremill/sttp/ResponseAs.scala
@@ -50,7 +50,9 @@ object ResponseAs {
private[sttp] def saveFile(file: File, is: InputStream, overwrite: Boolean): File = {
if (!file.exists()) {
- file.getParentFile.mkdirs()
+ if (file.getParentFile != null) {
+ file.getParentFile.mkdirs()
+ }
file.createNewFile()
} else if (!overwrite) {
throw new IOException(s"File ${file.getAbsolutePath} exists - overwriting prohibited")
diff --git a/core/src/main/scala/com/softwaremill/sttp/package.scala b/core/src/main/scala/com/softwaremill/sttp/package.scala
index 8bd6a4b..dd5b940 100644
--- a/core/src/main/scala/com/softwaremill/sttp/package.scala
+++ b/core/src/main/scala/com/softwaremill/sttp/package.scala
@@ -108,6 +108,9 @@ package object sttp {
def asStream[S]: ResponseAs[S, S] = ResponseAsStream[S, S]()
+ def asFile(path: String, overwrite: Boolean = false): ResponseAs[File, Nothing] =
+ ResponseAsFile(new File(path), overwrite)
+
def asFile(file: File, overwrite: Boolean = false): ResponseAs[File, Nothing] =
ResponseAsFile(file, overwrite)