Skip to content

Commit 1877b02

Browse files
committed
Merge remote-tracking branch 'GitLiveApp/master' into feature/field-value-encoding
2 parents 431bdb8 + 687773f commit 1877b02

File tree

8 files changed

+23
-1
lines changed

8 files changed

+23
-1
lines changed

firebase-storage/api/android/firebase-storage.api

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ public final class dev/gitlive/firebase/storage/FirebaseStorage {
1313
public final fun getMaxOperationRetryTime-UwyO8pc ()J
1414
public final fun getMaxUploadRetryTime-UwyO8pc ()J
1515
public final fun getReference ()Ldev/gitlive/firebase/storage/StorageReference;
16+
public final fun getReferenceFromUrl (Ljava/lang/String;)Ldev/gitlive/firebase/storage/StorageReference;
1617
public final fun reference (Ljava/lang/String;)Ldev/gitlive/firebase/storage/StorageReference;
1718
public final fun setMaxOperationRetryTime-LRDsOJo (J)V
1819
public final fun setMaxUploadRetryTime-LRDsOJo (J)V

firebase-storage/api/jvm/firebase-storage.api

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ public final class dev/gitlive/firebase/storage/FirebaseStorage {
1111
public final fun getMaxOperationRetryTime-UwyO8pc ()J
1212
public final fun getMaxUploadRetryTime-UwyO8pc ()J
1313
public final fun getReference ()Ldev/gitlive/firebase/storage/StorageReference;
14+
public final fun getReferenceFromUrl (Ljava/lang/String;)Ldev/gitlive/firebase/storage/StorageReference;
1415
public final fun reference (Ljava/lang/String;)Ldev/gitlive/firebase/storage/StorageReference;
1516
public final fun setMaxOperationRetryTime-LRDsOJo (J)V
1617
public final fun setMaxUploadRetryTime-LRDsOJo (J)V

firebase-storage/src/androidMain/kotlin/dev/gitlive/firebase/storage/storage.kt

+2
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ public actual class FirebaseStorage(internal val android: com.google.firebase.st
5555
public actual val reference: StorageReference get() = StorageReference(android.reference)
5656

5757
public actual fun reference(location: String): StorageReference = StorageReference(android.getReference(location))
58+
59+
public actual fun getReferenceFromUrl(fullUrl: String): StorageReference = StorageReference(android.getReferenceFromUrl(fullUrl))
5860
}
5961

6062
public val StorageReference.android: com.google.firebase.storage.StorageReference get() = android

firebase-storage/src/commonMain/kotlin/dev/gitlive/firebase/storage/storage.kt

+10
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,16 @@ public expect class FirebaseStorage {
8686
* @return An instance of [StorageReference] at the given child path.
8787
*/
8888
public fun reference(location: String): StorageReference
89+
90+
/**
91+
* Creates a [StorageReference] given a gs:// or https:// URL pointing to a Firebase Storage location.
92+
*
93+
* @param fullUrl A gs:// or http[s]:// URL used to initialize the reference. For example, you can pass
94+
* in a download URL retrieved from getDownloadUrl or the uri retrieved from toString An error is
95+
* thrown if fullUrl is not associated with the FirebaseApp used to initialize this FirebaseStorage.
96+
* @return An instance of [StorageReference] at the given url.
97+
*/
98+
public fun getReferenceFromUrl(fullUrl: String): StorageReference
8999
}
90100

91101
@Deprecated("Deprecated to use Kotlin Duration", replaceWith = ReplaceWith("maxOperationRetryTime"))

firebase-storage/src/iosMain/kotlin/dev/gitlive/firebase/storage/storage.kt

+2
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ public actual class FirebaseStorage(internal val ios: FIRStorage) {
6767
public actual val reference: StorageReference get() = StorageReference(ios.reference())
6868

6969
public actual fun reference(location: String): StorageReference = StorageReference(ios.referenceWithPath(location))
70+
71+
public actual fun getReferenceFromUrl(fullUrl: String): StorageReference = StorageReference(ios.referenceForURL(fullUrl))
7072
}
7173

7274
public val StorageReference.ios: FIRStorageReference get() = ios

firebase-storage/src/jsMain/kotlin/dev/gitlive/firebase/storage/storage.kt

+2
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ public actual class FirebaseStorage(internal val js: dev.gitlive.firebase.storag
5151
public actual val reference: StorageReference get() = StorageReference(ref(js))
5252

5353
public actual fun reference(location: String): StorageReference = rethrow { StorageReference(ref(js, location)) }
54+
55+
public actual fun getReferenceFromUrl(fullUrl: String): StorageReference = rethrow { StorageReference(ref(js, fullUrl)) }
5456
}
5557

5658
public val StorageReference.js get() = js

firebase-storage/src/jvmMain/kotlin/dev/gitlive/firebase/storage/storage.jvm.kt

+4
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ public actual class FirebaseStorage {
3737
public actual fun reference(location: String): StorageReference {
3838
TODO("Not yet implemented")
3939
}
40+
41+
public actual fun getReferenceFromUrl(fullUrl: String): StorageReference {
42+
TODO("Not yet implemented")
43+
}
4044
}
4145

4246
public actual class StorageReference {

gradle/libs.versions.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ androidx-test-junit = "1.2.1"
55
androidx-test-runner = "1.6.2"
66
ben-manes-versions = "0.51.0"
77
firebase-bom = "33.2.0"
8-
gitlive-firebase-java-sdk = "0.4.5"
8+
gitlive-firebase-java-sdk = "0.4.6"
99
gson = "2.11.0"
1010
junit = "4.13.2"
1111
kotlin = "2.0.20"

0 commit comments

Comments
 (0)