aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/core/file/GcsStorage.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/core/file/GcsStorage.scala')
-rw-r--r--src/main/scala/xyz/driver/core/file/GcsStorage.scala9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/core/file/GcsStorage.scala b/src/main/scala/xyz/driver/core/file/GcsStorage.scala
index 0d8b918..deb8a0e 100644
--- a/src/main/scala/xyz/driver/core/file/GcsStorage.scala
+++ b/src/main/scala/xyz/driver/core/file/GcsStorage.scala
@@ -79,6 +79,15 @@ class GcsStorage(storageClient: Storage, bucketName: Name[Bucket], executionCont
)
}
+ override def exists(path: Path): Future[Boolean] = Future {
+ val blob = Option(
+ storageClient.get(
+ bucketName.value,
+ path.toString
+ ))
+ blob.isDefined
+ }
+
override def signedFileUrl(filePath: Path, duration: Duration): OptionT[Future, URL] =
OptionT.optionT(Future {
Option(storageClient.get(bucketName.value, filePath.toString)).filterNot(_.getSize == 0).map { blob =>