@onekeyfe/react-native-range-downloader 3.0.81 → 3.0.82

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/ReactNativeRangeDownloader.podspec +7 -0
  2. package/android/src/main/java/com/margelo/nitro/reactnativerangedownloader/FirmwareArchiveRules.kt +291 -0
  3. package/android/src/main/java/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactOrphanSweep.kt +111 -0
  4. package/android/src/main/java/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactStore.kt +822 -0
  5. package/android/src/main/java/com/margelo/nitro/reactnativerangedownloader/ReactNativeRangeDownloader.kt +148 -0
  6. package/android/src/test/java/com/margelo/nitro/reactnativerangedownloader/FirmwareArchiveRulesTest.kt +114 -0
  7. package/android/src/test/java/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactDeadlineTest.kt +26 -0
  8. package/android/src/test/java/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactOrphanSweepTest.kt +107 -0
  9. package/ios/FirmwareArchiveMinizipBridge.h +33 -0
  10. package/ios/FirmwareArchiveMinizipBridge.mm +213 -0
  11. package/ios/FirmwareArtifactStore.swift +1508 -0
  12. package/ios/RangeDownloadLogic.swift +317 -0
  13. package/ios/ReactNativeRangeDownloader.swift +214 -6
  14. package/lib/module/index.js +2 -1
  15. package/lib/module/index.js.map +1 -1
  16. package/lib/typescript/src/ReactNativeRangeDownloader.nitro.d.ts +92 -1
  17. package/lib/typescript/src/ReactNativeRangeDownloader.nitro.d.ts.map +1 -1
  18. package/lib/typescript/src/index.d.ts +1 -0
  19. package/lib/typescript/src/index.d.ts.map +1 -1
  20. package/nitrogen/generated/android/c++/JDownloadChannel.hpp +8 -6
  21. package/nitrogen/generated/android/c++/JFirmwareArchiveExpectedEntry.hpp +69 -0
  22. package/nitrogen/generated/android/c++/JFirmwareArchiveMaterializeParams.hpp +87 -0
  23. package/nitrogen/generated/android/c++/JFirmwareArchiveMaterializeResult.hpp +80 -0
  24. package/nitrogen/generated/android/c++/JFirmwareArchiveMaterializedArtifact.hpp +63 -0
  25. package/nitrogen/generated/android/c++/JFirmwareArtifactCancelParams.hpp +57 -0
  26. package/nitrogen/generated/android/c++/JFirmwareArtifactCapabilities.hpp +88 -0
  27. package/nitrogen/generated/android/c++/JFirmwareArtifactDownloadParams.hpp +98 -0
  28. package/nitrogen/generated/android/c++/JFirmwareArtifactLease.hpp +57 -0
  29. package/nitrogen/generated/android/c++/JFirmwareArtifactLeaseCreateParams.hpp +57 -0
  30. package/nitrogen/generated/android/c++/JFirmwareArtifactLeaseReleaseParams.hpp +61 -0
  31. package/nitrogen/generated/android/c++/JFirmwareArtifactLeaseRetainParams.hpp +61 -0
  32. package/nitrogen/generated/android/c++/JFirmwareArtifactReaderCloseParams.hpp +57 -0
  33. package/nitrogen/generated/android/c++/JFirmwareArtifactReaderInfo.hpp +61 -0
  34. package/nitrogen/generated/android/c++/JFirmwareArtifactReaderReadParams.hpp +65 -0
  35. package/nitrogen/generated/android/c++/JFirmwareArtifactReceipt.hpp +69 -0
  36. package/nitrogen/generated/android/c++/JFirmwareArtifactRefParams.hpp +57 -0
  37. package/nitrogen/generated/android/c++/JFirmwareArtifactSweepResult.hpp +61 -0
  38. package/nitrogen/generated/android/c++/JFunc_void_RangeDownloadEvent.hpp +3 -3
  39. package/nitrogen/generated/android/c++/JHybridReactNativeRangeDownloaderSpec.cpp +274 -25
  40. package/nitrogen/generated/android/c++/JHybridReactNativeRangeDownloaderSpec.hpp +32 -22
  41. package/nitrogen/generated/android/c++/JRangeDownloadEvent.hpp +2 -2
  42. package/nitrogen/generated/android/c++/JRangeDownloadOutcome.hpp +6 -7
  43. package/nitrogen/generated/android/c++/JRangeDownloadParams.hpp +2 -2
  44. package/nitrogen/generated/android/c++/JRangeDownloadResult.hpp +2 -2
  45. package/nitrogen/generated/android/c++/JRangeFallbackKind.hpp +12 -13
  46. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/DownloadChannel.kt +5 -2
  47. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArchiveExpectedEntry.kt +47 -0
  48. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArchiveMaterializeParams.kt +44 -0
  49. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArchiveMaterializeResult.kt +38 -0
  50. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArchiveMaterializedArtifact.kt +41 -0
  51. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactCancelParams.kt +38 -0
  52. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactCapabilities.kt +47 -0
  53. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactDownloadParams.kt +68 -0
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactLease.kt +38 -0
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactLeaseCreateParams.kt +38 -0
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactLeaseReleaseParams.kt +41 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactLeaseRetainParams.kt +41 -0
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactReaderCloseParams.kt +38 -0
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactReaderInfo.kt +41 -0
  60. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactReaderReadParams.kt +44 -0
  61. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactReceipt.kt +47 -0
  62. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactRefParams.kt +38 -0
  63. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/FirmwareArtifactSweepResult.kt +41 -0
  64. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/Func_void_RangeDownloadEvent.kt +1 -1
  65. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/HybridReactNativeRangeDownloaderSpec.kt +65 -19
  66. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/RangeDownloadEvent.kt +2 -2
  67. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/RangeDownloadOutcome.kt +3 -1
  68. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/RangeDownloadParams.kt +2 -2
  69. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/RangeDownloadResult.kt +2 -2
  70. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/RangeFallbackKind.kt +3 -1
  71. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativerangedownloader/reactnativerangedownloaderOnLoad.kt +1 -1
  72. package/nitrogen/generated/android/reactnativerangedownloader+autolinking.cmake +1 -1
  73. package/nitrogen/generated/android/reactnativerangedownloader+autolinking.gradle +1 -1
  74. package/nitrogen/generated/android/reactnativerangedownloaderOnLoad.cpp +28 -18
  75. package/nitrogen/generated/android/reactnativerangedownloaderOnLoad.hpp +14 -5
  76. package/nitrogen/generated/ios/ReactNativeRangeDownloader+autolinking.rb +2 -2
  77. package/nitrogen/generated/ios/ReactNativeRangeDownloader-Swift-Cxx-Bridge.cpp +49 -1
  78. package/nitrogen/generated/ios/ReactNativeRangeDownloader-Swift-Cxx-Bridge.hpp +348 -4
  79. package/nitrogen/generated/ios/ReactNativeRangeDownloader-Swift-Cxx-Umbrella.hpp +54 -1
  80. package/nitrogen/generated/ios/ReactNativeRangeDownloaderAutolinking.mm +1 -1
  81. package/nitrogen/generated/ios/ReactNativeRangeDownloaderAutolinking.swift +9 -8
  82. package/nitrogen/generated/ios/c++/HybridReactNativeRangeDownloaderSpecSwift.cpp +1 -1
  83. package/nitrogen/generated/ios/c++/HybridReactNativeRangeDownloaderSpecSwift.hpp +159 -1
  84. package/nitrogen/generated/ios/swift/DownloadChannel.swift +5 -1
  85. package/nitrogen/generated/ios/swift/FirmwareArchiveExpectedEntry.swift +44 -0
  86. package/nitrogen/generated/ios/swift/FirmwareArchiveMaterializeParams.swift +58 -0
  87. package/nitrogen/generated/ios/swift/FirmwareArchiveMaterializeResult.swift +35 -0
  88. package/nitrogen/generated/ios/swift/FirmwareArchiveMaterializedArtifact.swift +34 -0
  89. package/nitrogen/generated/ios/swift/FirmwareArtifactCancelParams.swift +29 -0
  90. package/nitrogen/generated/ios/swift/FirmwareArtifactCapabilities.swift +50 -0
  91. package/nitrogen/generated/ios/swift/FirmwareArtifactDownloadParams.swift +131 -0
  92. package/nitrogen/generated/ios/swift/FirmwareArtifactLease.swift +29 -0
  93. package/nitrogen/generated/ios/swift/FirmwareArtifactLeaseCreateParams.swift +29 -0
  94. package/nitrogen/generated/ios/swift/FirmwareArtifactLeaseReleaseParams.swift +34 -0
  95. package/nitrogen/generated/ios/swift/FirmwareArtifactLeaseRetainParams.swift +34 -0
  96. package/nitrogen/generated/ios/swift/FirmwareArtifactReaderCloseParams.swift +29 -0
  97. package/nitrogen/generated/ios/swift/FirmwareArtifactReaderInfo.swift +34 -0
  98. package/nitrogen/generated/ios/swift/FirmwareArtifactReaderReadParams.swift +39 -0
  99. package/nitrogen/generated/ios/swift/FirmwareArtifactReceipt.swift +44 -0
  100. package/nitrogen/generated/ios/swift/FirmwareArtifactRefParams.swift +29 -0
  101. package/nitrogen/generated/ios/swift/FirmwareArtifactSweepResult.swift +34 -0
  102. package/nitrogen/generated/ios/swift/Func_void.swift +1 -2
  103. package/nitrogen/generated/ios/swift/Func_void_FirmwareArchiveMaterializeResult.swift +46 -0
  104. package/nitrogen/generated/ios/swift/Func_void_FirmwareArtifactLease.swift +46 -0
  105. package/nitrogen/generated/ios/swift/Func_void_FirmwareArtifactReaderInfo.swift +46 -0
  106. package/nitrogen/generated/ios/swift/Func_void_FirmwareArtifactReceipt.swift +46 -0
  107. package/nitrogen/generated/ios/swift/Func_void_FirmwareArtifactSweepResult.swift +46 -0
  108. package/nitrogen/generated/ios/swift/Func_void_RangeDownloadEvent.swift +1 -2
  109. package/nitrogen/generated/ios/swift/Func_void_RangeDownloadResult.swift +1 -2
  110. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -2
  111. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_ArrayBuffer_.swift +46 -0
  112. package/nitrogen/generated/ios/swift/HybridReactNativeRangeDownloaderSpec.swift +15 -4
  113. package/nitrogen/generated/ios/swift/HybridReactNativeRangeDownloaderSpec_cxx.swift +230 -2
  114. package/nitrogen/generated/ios/swift/RangeDownloadEvent.swift +11 -42
  115. package/nitrogen/generated/ios/swift/RangeDownloadOutcome.swift +1 -1
  116. package/nitrogen/generated/ios/swift/RangeDownloadParams.swift +72 -139
  117. package/nitrogen/generated/ios/swift/RangeDownloadResult.swift +16 -53
  118. package/nitrogen/generated/ios/swift/RangeFallbackKind.swift +1 -1
  119. package/nitrogen/generated/shared/c++/DownloadChannel.hpp +5 -1
  120. package/nitrogen/generated/shared/c++/FirmwareArchiveExpectedEntry.hpp +95 -0
  121. package/nitrogen/generated/shared/c++/FirmwareArchiveMaterializeParams.hpp +95 -0
  122. package/nitrogen/generated/shared/c++/FirmwareArchiveMaterializeResult.hpp +85 -0
  123. package/nitrogen/generated/shared/c++/FirmwareArchiveMaterializedArtifact.hpp +89 -0
  124. package/nitrogen/generated/shared/c++/FirmwareArtifactCancelParams.hpp +83 -0
  125. package/nitrogen/generated/shared/c++/FirmwareArtifactCapabilities.hpp +96 -0
  126. package/nitrogen/generated/shared/c++/FirmwareArtifactDownloadParams.hpp +124 -0
  127. package/nitrogen/generated/shared/c++/FirmwareArtifactLease.hpp +83 -0
  128. package/nitrogen/generated/shared/c++/FirmwareArtifactLeaseCreateParams.hpp +83 -0
  129. package/nitrogen/generated/shared/c++/FirmwareArtifactLeaseReleaseParams.hpp +87 -0
  130. package/nitrogen/generated/shared/c++/FirmwareArtifactLeaseRetainParams.hpp +87 -0
  131. package/nitrogen/generated/shared/c++/FirmwareArtifactReaderCloseParams.hpp +83 -0
  132. package/nitrogen/generated/shared/c++/FirmwareArtifactReaderInfo.hpp +87 -0
  133. package/nitrogen/generated/shared/c++/FirmwareArtifactReaderReadParams.hpp +91 -0
  134. package/nitrogen/generated/shared/c++/FirmwareArtifactReceipt.hpp +95 -0
  135. package/nitrogen/generated/shared/c++/FirmwareArtifactRefParams.hpp +83 -0
  136. package/nitrogen/generated/shared/c++/FirmwareArtifactSweepResult.hpp +87 -0
  137. package/nitrogen/generated/shared/c++/HybridReactNativeRangeDownloaderSpec.cpp +13 -1
  138. package/nitrogen/generated/shared/c++/HybridReactNativeRangeDownloaderSpec.hpp +59 -1
  139. package/nitrogen/generated/shared/c++/RangeDownloadEvent.hpp +25 -17
  140. package/nitrogen/generated/shared/c++/RangeDownloadOutcome.hpp +1 -1
  141. package/nitrogen/generated/shared/c++/RangeDownloadParams.hpp +43 -35
  142. package/nitrogen/generated/shared/c++/RangeDownloadResult.hpp +22 -14
  143. package/nitrogen/generated/shared/c++/RangeFallbackKind.hpp +1 -1
  144. package/package.json +4 -4
  145. package/src/ReactNativeRangeDownloader.nitro.ts +130 -1
  146. package/src/index.tsx +3 -1
@@ -4,6 +4,7 @@ export declare const RangeDownloadChannel: {
4
4
  readonly Bundle: "bundle";
5
5
  readonly Apk: "apk";
6
6
  readonly Chart: "chart";
7
+ readonly Firmware: "firmware";
7
8
  };
8
9
  export type * from './ReactNativeRangeDownloader.nitro';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,IAAI,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AAOvH,eAAO,MAAM,0BAA0B,gCAAyC,CAAC;AAKjF,eAAO,MAAM,oBAAoB;;;;CAIvB,CAAC;AAEX,mBAAmB,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,IAAI,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AAOvH,eAAO,MAAM,0BAA0B,gCACC,CAAC;AAKzC,eAAO,MAAM,oBAAoB;;;;;CAKvB,CAAC;AAEX,mBAAmB,oCAAoC,CAAC"}
@@ -2,7 +2,7 @@
2
2
  /// JDownloadChannel.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -19,7 +19,7 @@ namespace margelo::nitro::reactnativerangedownloader {
19
19
  */
20
20
  struct JDownloadChannel final: public jni::JavaClass<JDownloadChannel> {
21
21
  public:
22
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/DownloadChannel;";
22
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/DownloadChannel;";
23
23
 
24
24
  public:
25
25
  /**
@@ -41,17 +41,19 @@ namespace margelo::nitro::reactnativerangedownloader {
41
41
  [[maybe_unused]]
42
42
  static jni::alias_ref<JDownloadChannel> fromCpp(DownloadChannel value) {
43
43
  static const auto clazz = javaClassStatic();
44
- static const auto fieldBUNDLE = clazz->getStaticField<JDownloadChannel>("BUNDLE");
45
- static const auto fieldAPK = clazz->getStaticField<JDownloadChannel>("APK");
46
- static const auto fieldCHART = clazz->getStaticField<JDownloadChannel>("CHART");
47
-
48
44
  switch (value) {
49
45
  case DownloadChannel::BUNDLE:
46
+ static const auto fieldBUNDLE = clazz->getStaticField<JDownloadChannel>("BUNDLE");
50
47
  return clazz->getStaticFieldValue(fieldBUNDLE);
51
48
  case DownloadChannel::APK:
49
+ static const auto fieldAPK = clazz->getStaticField<JDownloadChannel>("APK");
52
50
  return clazz->getStaticFieldValue(fieldAPK);
53
51
  case DownloadChannel::CHART:
52
+ static const auto fieldCHART = clazz->getStaticField<JDownloadChannel>("CHART");
54
53
  return clazz->getStaticFieldValue(fieldCHART);
54
+ case DownloadChannel::FIRMWARE:
55
+ static const auto fieldFIRMWARE = clazz->getStaticField<JDownloadChannel>("FIRMWARE");
56
+ return clazz->getStaticFieldValue(fieldFIRMWARE);
55
57
  default:
56
58
  std::string stringValue = std::to_string(static_cast<int>(value));
57
59
  throw std::invalid_argument("Invalid enum value (" + stringValue + "!");
@@ -0,0 +1,69 @@
1
+ ///
2
+ /// JFirmwareArchiveExpectedEntry.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArchiveExpectedEntry.hpp"
12
+
13
+ #include <string>
14
+
15
+ namespace margelo::nitro::reactnativerangedownloader {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "FirmwareArchiveExpectedEntry" and the the Kotlin data class "FirmwareArchiveExpectedEntry".
21
+ */
22
+ struct JFirmwareArchiveExpectedEntry final: public jni::JavaClass<JFirmwareArchiveExpectedEntry> {
23
+ public:
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArchiveExpectedEntry;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArchiveExpectedEntry by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ FirmwareArchiveExpectedEntry toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldArtifactId = clazz->getField<jni::JString>("artifactId");
35
+ jni::local_ref<jni::JString> artifactId = this->getFieldValue(fieldArtifactId);
36
+ static const auto fieldEntryName = clazz->getField<jni::JString>("entryName");
37
+ jni::local_ref<jni::JString> entryName = this->getFieldValue(fieldEntryName);
38
+ static const auto fieldExpectedSize = clazz->getField<double>("expectedSize");
39
+ double expectedSize = this->getFieldValue(fieldExpectedSize);
40
+ static const auto fieldExpectedSha256 = clazz->getField<jni::JString>("expectedSha256");
41
+ jni::local_ref<jni::JString> expectedSha256 = this->getFieldValue(fieldExpectedSha256);
42
+ return FirmwareArchiveExpectedEntry(
43
+ artifactId->toStdString(),
44
+ entryName->toStdString(),
45
+ expectedSize,
46
+ expectedSha256->toStdString()
47
+ );
48
+ }
49
+
50
+ public:
51
+ /**
52
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
53
+ */
54
+ [[maybe_unused]]
55
+ static jni::local_ref<JFirmwareArchiveExpectedEntry::javaobject> fromCpp(const FirmwareArchiveExpectedEntry& value) {
56
+ using JSignature = JFirmwareArchiveExpectedEntry(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, double, jni::alias_ref<jni::JString>);
57
+ static const auto clazz = javaClassStatic();
58
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
59
+ return create(
60
+ clazz,
61
+ jni::make_jstring(value.artifactId),
62
+ jni::make_jstring(value.entryName),
63
+ value.expectedSize,
64
+ jni::make_jstring(value.expectedSha256)
65
+ );
66
+ }
67
+ };
68
+
69
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,87 @@
1
+ ///
2
+ /// JFirmwareArchiveMaterializeParams.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArchiveMaterializeParams.hpp"
12
+
13
+ #include "FirmwareArchiveExpectedEntry.hpp"
14
+ #include "JFirmwareArchiveExpectedEntry.hpp"
15
+ #include <optional>
16
+ #include <string>
17
+ #include <vector>
18
+
19
+ namespace margelo::nitro::reactnativerangedownloader {
20
+
21
+ using namespace facebook;
22
+
23
+ /**
24
+ * The C++ JNI bridge between the C++ struct "FirmwareArchiveMaterializeParams" and the the Kotlin data class "FirmwareArchiveMaterializeParams".
25
+ */
26
+ struct JFirmwareArchiveMaterializeParams final: public jni::JavaClass<JFirmwareArchiveMaterializeParams> {
27
+ public:
28
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArchiveMaterializeParams;";
29
+
30
+ public:
31
+ /**
32
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArchiveMaterializeParams by copying all values to C++.
33
+ */
34
+ [[maybe_unused]]
35
+ [[nodiscard]]
36
+ FirmwareArchiveMaterializeParams toCpp() const {
37
+ static const auto clazz = javaClassStatic();
38
+ static const auto fieldLeaseRef = clazz->getField<jni::JString>("leaseRef");
39
+ jni::local_ref<jni::JString> leaseRef = this->getFieldValue(fieldLeaseRef);
40
+ static const auto fieldArchiveArtifactRef = clazz->getField<jni::JString>("archiveArtifactRef");
41
+ jni::local_ref<jni::JString> archiveArtifactRef = this->getFieldValue(fieldArchiveArtifactRef);
42
+ static const auto fieldExpectedEntries = clazz->getField<jni::JArrayClass<JFirmwareArchiveExpectedEntry>>("expectedEntries");
43
+ jni::local_ref<jni::JArrayClass<JFirmwareArchiveExpectedEntry>> expectedEntries = this->getFieldValue(fieldExpectedEntries);
44
+ return FirmwareArchiveMaterializeParams(
45
+ leaseRef->toStdString(),
46
+ archiveArtifactRef->toStdString(),
47
+ expectedEntries != nullptr ? std::make_optional([&]() {
48
+ size_t __size = expectedEntries->size();
49
+ std::vector<FirmwareArchiveExpectedEntry> __vector;
50
+ __vector.reserve(__size);
51
+ for (size_t __i = 0; __i < __size; __i++) {
52
+ auto __element = expectedEntries->getElement(__i);
53
+ __vector.push_back(__element->toCpp());
54
+ }
55
+ return __vector;
56
+ }()) : std::nullopt
57
+ );
58
+ }
59
+
60
+ public:
61
+ /**
62
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
63
+ */
64
+ [[maybe_unused]]
65
+ static jni::local_ref<JFirmwareArchiveMaterializeParams::javaobject> fromCpp(const FirmwareArchiveMaterializeParams& value) {
66
+ using JSignature = JFirmwareArchiveMaterializeParams(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JArrayClass<JFirmwareArchiveExpectedEntry>>);
67
+ static const auto clazz = javaClassStatic();
68
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
69
+ return create(
70
+ clazz,
71
+ jni::make_jstring(value.leaseRef),
72
+ jni::make_jstring(value.archiveArtifactRef),
73
+ value.expectedEntries.has_value() ? [&]() {
74
+ size_t __size = value.expectedEntries.value().size();
75
+ jni::local_ref<jni::JArrayClass<JFirmwareArchiveExpectedEntry>> __array = jni::JArrayClass<JFirmwareArchiveExpectedEntry>::newArray(__size);
76
+ for (size_t __i = 0; __i < __size; __i++) {
77
+ const auto& __element = value.expectedEntries.value()[__i];
78
+ auto __elementJni = JFirmwareArchiveExpectedEntry::fromCpp(__element);
79
+ __array->setElement(__i, *__elementJni);
80
+ }
81
+ return __array;
82
+ }() : nullptr
83
+ );
84
+ }
85
+ };
86
+
87
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,80 @@
1
+ ///
2
+ /// JFirmwareArchiveMaterializeResult.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArchiveMaterializeResult.hpp"
12
+
13
+ #include "FirmwareArchiveMaterializedArtifact.hpp"
14
+ #include "FirmwareArtifactReceipt.hpp"
15
+ #include "JFirmwareArchiveMaterializedArtifact.hpp"
16
+ #include "JFirmwareArtifactReceipt.hpp"
17
+ #include <string>
18
+ #include <vector>
19
+
20
+ namespace margelo::nitro::reactnativerangedownloader {
21
+
22
+ using namespace facebook;
23
+
24
+ /**
25
+ * The C++ JNI bridge between the C++ struct "FirmwareArchiveMaterializeResult" and the the Kotlin data class "FirmwareArchiveMaterializeResult".
26
+ */
27
+ struct JFirmwareArchiveMaterializeResult final: public jni::JavaClass<JFirmwareArchiveMaterializeResult> {
28
+ public:
29
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArchiveMaterializeResult;";
30
+
31
+ public:
32
+ /**
33
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArchiveMaterializeResult by copying all values to C++.
34
+ */
35
+ [[maybe_unused]]
36
+ [[nodiscard]]
37
+ FirmwareArchiveMaterializeResult toCpp() const {
38
+ static const auto clazz = javaClassStatic();
39
+ static const auto fieldArtifacts = clazz->getField<jni::JArrayClass<JFirmwareArchiveMaterializedArtifact>>("artifacts");
40
+ jni::local_ref<jni::JArrayClass<JFirmwareArchiveMaterializedArtifact>> artifacts = this->getFieldValue(fieldArtifacts);
41
+ return FirmwareArchiveMaterializeResult(
42
+ [&]() {
43
+ size_t __size = artifacts->size();
44
+ std::vector<FirmwareArchiveMaterializedArtifact> __vector;
45
+ __vector.reserve(__size);
46
+ for (size_t __i = 0; __i < __size; __i++) {
47
+ auto __element = artifacts->getElement(__i);
48
+ __vector.push_back(__element->toCpp());
49
+ }
50
+ return __vector;
51
+ }()
52
+ );
53
+ }
54
+
55
+ public:
56
+ /**
57
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
58
+ */
59
+ [[maybe_unused]]
60
+ static jni::local_ref<JFirmwareArchiveMaterializeResult::javaobject> fromCpp(const FirmwareArchiveMaterializeResult& value) {
61
+ using JSignature = JFirmwareArchiveMaterializeResult(jni::alias_ref<jni::JArrayClass<JFirmwareArchiveMaterializedArtifact>>);
62
+ static const auto clazz = javaClassStatic();
63
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
64
+ return create(
65
+ clazz,
66
+ [&]() {
67
+ size_t __size = value.artifacts.size();
68
+ jni::local_ref<jni::JArrayClass<JFirmwareArchiveMaterializedArtifact>> __array = jni::JArrayClass<JFirmwareArchiveMaterializedArtifact>::newArray(__size);
69
+ for (size_t __i = 0; __i < __size; __i++) {
70
+ const auto& __element = value.artifacts[__i];
71
+ auto __elementJni = JFirmwareArchiveMaterializedArtifact::fromCpp(__element);
72
+ __array->setElement(__i, *__elementJni);
73
+ }
74
+ return __array;
75
+ }()
76
+ );
77
+ }
78
+ };
79
+
80
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,63 @@
1
+ ///
2
+ /// JFirmwareArchiveMaterializedArtifact.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArchiveMaterializedArtifact.hpp"
12
+
13
+ #include "FirmwareArtifactReceipt.hpp"
14
+ #include "JFirmwareArtifactReceipt.hpp"
15
+ #include <string>
16
+
17
+ namespace margelo::nitro::reactnativerangedownloader {
18
+
19
+ using namespace facebook;
20
+
21
+ /**
22
+ * The C++ JNI bridge between the C++ struct "FirmwareArchiveMaterializedArtifact" and the the Kotlin data class "FirmwareArchiveMaterializedArtifact".
23
+ */
24
+ struct JFirmwareArchiveMaterializedArtifact final: public jni::JavaClass<JFirmwareArchiveMaterializedArtifact> {
25
+ public:
26
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArchiveMaterializedArtifact;";
27
+
28
+ public:
29
+ /**
30
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArchiveMaterializedArtifact by copying all values to C++.
31
+ */
32
+ [[maybe_unused]]
33
+ [[nodiscard]]
34
+ FirmwareArchiveMaterializedArtifact toCpp() const {
35
+ static const auto clazz = javaClassStatic();
36
+ static const auto fieldEntryName = clazz->getField<jni::JString>("entryName");
37
+ jni::local_ref<jni::JString> entryName = this->getFieldValue(fieldEntryName);
38
+ static const auto fieldReceipt = clazz->getField<JFirmwareArtifactReceipt>("receipt");
39
+ jni::local_ref<JFirmwareArtifactReceipt> receipt = this->getFieldValue(fieldReceipt);
40
+ return FirmwareArchiveMaterializedArtifact(
41
+ entryName->toStdString(),
42
+ receipt->toCpp()
43
+ );
44
+ }
45
+
46
+ public:
47
+ /**
48
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
49
+ */
50
+ [[maybe_unused]]
51
+ static jni::local_ref<JFirmwareArchiveMaterializedArtifact::javaobject> fromCpp(const FirmwareArchiveMaterializedArtifact& value) {
52
+ using JSignature = JFirmwareArchiveMaterializedArtifact(jni::alias_ref<jni::JString>, jni::alias_ref<JFirmwareArtifactReceipt>);
53
+ static const auto clazz = javaClassStatic();
54
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
55
+ return create(
56
+ clazz,
57
+ jni::make_jstring(value.entryName),
58
+ JFirmwareArtifactReceipt::fromCpp(value.receipt)
59
+ );
60
+ }
61
+ };
62
+
63
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,57 @@
1
+ ///
2
+ /// JFirmwareArtifactCancelParams.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArtifactCancelParams.hpp"
12
+
13
+ #include <string>
14
+
15
+ namespace margelo::nitro::reactnativerangedownloader {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "FirmwareArtifactCancelParams" and the the Kotlin data class "FirmwareArtifactCancelParams".
21
+ */
22
+ struct JFirmwareArtifactCancelParams final: public jni::JavaClass<JFirmwareArtifactCancelParams> {
23
+ public:
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArtifactCancelParams;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArtifactCancelParams by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ FirmwareArtifactCancelParams toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldTransactionId = clazz->getField<jni::JString>("transactionId");
35
+ jni::local_ref<jni::JString> transactionId = this->getFieldValue(fieldTransactionId);
36
+ return FirmwareArtifactCancelParams(
37
+ transactionId->toStdString()
38
+ );
39
+ }
40
+
41
+ public:
42
+ /**
43
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
44
+ */
45
+ [[maybe_unused]]
46
+ static jni::local_ref<JFirmwareArtifactCancelParams::javaobject> fromCpp(const FirmwareArtifactCancelParams& value) {
47
+ using JSignature = JFirmwareArtifactCancelParams(jni::alias_ref<jni::JString>);
48
+ static const auto clazz = javaClassStatic();
49
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
50
+ return create(
51
+ clazz,
52
+ jni::make_jstring(value.transactionId)
53
+ );
54
+ }
55
+ };
56
+
57
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,88 @@
1
+ ///
2
+ /// JFirmwareArtifactCapabilities.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArtifactCapabilities.hpp"
12
+
13
+ #include <string>
14
+ #include <vector>
15
+
16
+ namespace margelo::nitro::reactnativerangedownloader {
17
+
18
+ using namespace facebook;
19
+
20
+ /**
21
+ * The C++ JNI bridge between the C++ struct "FirmwareArtifactCapabilities" and the the Kotlin data class "FirmwareArtifactCapabilities".
22
+ */
23
+ struct JFirmwareArtifactCapabilities final: public jni::JavaClass<JFirmwareArtifactCapabilities> {
24
+ public:
25
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArtifactCapabilities;";
26
+
27
+ public:
28
+ /**
29
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArtifactCapabilities by copying all values to C++.
30
+ */
31
+ [[maybe_unused]]
32
+ [[nodiscard]]
33
+ FirmwareArtifactCapabilities toCpp() const {
34
+ static const auto clazz = javaClassStatic();
35
+ static const auto fieldFirmwareArtifactProtocolVersion = clazz->getField<double>("firmwareArtifactProtocolVersion");
36
+ double firmwareArtifactProtocolVersion = this->getFieldValue(fieldFirmwareArtifactProtocolVersion);
37
+ static const auto fieldSupportedRouteTypes = clazz->getField<jni::JArrayClass<jni::JString>>("supportedRouteTypes");
38
+ jni::local_ref<jni::JArrayClass<jni::JString>> supportedRouteTypes = this->getFieldValue(fieldSupportedRouteTypes);
39
+ static const auto fieldSupportsArchiveMaterialization = clazz->getField<jboolean>("supportsArchiveMaterialization");
40
+ jboolean supportsArchiveMaterialization = this->getFieldValue(fieldSupportsArchiveMaterialization);
41
+ static const auto fieldMaxReadBytes = clazz->getField<double>("maxReadBytes");
42
+ double maxReadBytes = this->getFieldValue(fieldMaxReadBytes);
43
+ return FirmwareArtifactCapabilities(
44
+ firmwareArtifactProtocolVersion,
45
+ [&]() {
46
+ size_t __size = supportedRouteTypes->size();
47
+ std::vector<std::string> __vector;
48
+ __vector.reserve(__size);
49
+ for (size_t __i = 0; __i < __size; __i++) {
50
+ auto __element = supportedRouteTypes->getElement(__i);
51
+ __vector.push_back(__element->toStdString());
52
+ }
53
+ return __vector;
54
+ }(),
55
+ static_cast<bool>(supportsArchiveMaterialization),
56
+ maxReadBytes
57
+ );
58
+ }
59
+
60
+ public:
61
+ /**
62
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
63
+ */
64
+ [[maybe_unused]]
65
+ static jni::local_ref<JFirmwareArtifactCapabilities::javaobject> fromCpp(const FirmwareArtifactCapabilities& value) {
66
+ using JSignature = JFirmwareArtifactCapabilities(double, jni::alias_ref<jni::JArrayClass<jni::JString>>, jboolean, double);
67
+ static const auto clazz = javaClassStatic();
68
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
69
+ return create(
70
+ clazz,
71
+ value.firmwareArtifactProtocolVersion,
72
+ [&]() {
73
+ size_t __size = value.supportedRouteTypes.size();
74
+ jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
75
+ for (size_t __i = 0; __i < __size; __i++) {
76
+ const auto& __element = value.supportedRouteTypes[__i];
77
+ auto __elementJni = jni::make_jstring(__element);
78
+ __array->setElement(__i, *__elementJni);
79
+ }
80
+ return __array;
81
+ }(),
82
+ value.supportsArchiveMaterialization,
83
+ value.maxReadBytes
84
+ );
85
+ }
86
+ };
87
+
88
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,98 @@
1
+ ///
2
+ /// JFirmwareArtifactDownloadParams.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArtifactDownloadParams.hpp"
12
+
13
+ #include <optional>
14
+ #include <string>
15
+
16
+ namespace margelo::nitro::reactnativerangedownloader {
17
+
18
+ using namespace facebook;
19
+
20
+ /**
21
+ * The C++ JNI bridge between the C++ struct "FirmwareArtifactDownloadParams" and the the Kotlin data class "FirmwareArtifactDownloadParams".
22
+ */
23
+ struct JFirmwareArtifactDownloadParams final: public jni::JavaClass<JFirmwareArtifactDownloadParams> {
24
+ public:
25
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArtifactDownloadParams;";
26
+
27
+ public:
28
+ /**
29
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArtifactDownloadParams by copying all values to C++.
30
+ */
31
+ [[maybe_unused]]
32
+ [[nodiscard]]
33
+ FirmwareArtifactDownloadParams toCpp() const {
34
+ static const auto clazz = javaClassStatic();
35
+ static const auto fieldTaskId = clazz->getField<jni::JString>("taskId");
36
+ jni::local_ref<jni::JString> taskId = this->getFieldValue(fieldTaskId);
37
+ static const auto fieldTransactionId = clazz->getField<jni::JString>("transactionId");
38
+ jni::local_ref<jni::JString> transactionId = this->getFieldValue(fieldTransactionId);
39
+ static const auto fieldLeaseRef = clazz->getField<jni::JString>("leaseRef");
40
+ jni::local_ref<jni::JString> leaseRef = this->getFieldValue(fieldLeaseRef);
41
+ static const auto fieldArtifactId = clazz->getField<jni::JString>("artifactId");
42
+ jni::local_ref<jni::JString> artifactId = this->getFieldValue(fieldArtifactId);
43
+ static const auto fieldUrl = clazz->getField<jni::JString>("url");
44
+ jni::local_ref<jni::JString> url = this->getFieldValue(fieldUrl);
45
+ static const auto fieldRouteType = clazz->getField<jni::JString>("routeType");
46
+ jni::local_ref<jni::JString> routeType = this->getFieldValue(fieldRouteType);
47
+ static const auto fieldResolvedIp = clazz->getField<jni::JString>("resolvedIp");
48
+ jni::local_ref<jni::JString> resolvedIp = this->getFieldValue(fieldResolvedIp);
49
+ static const auto fieldExpectedSize = clazz->getField<jni::JDouble>("expectedSize");
50
+ jni::local_ref<jni::JDouble> expectedSize = this->getFieldValue(fieldExpectedSize);
51
+ static const auto fieldExpectedSha256 = clazz->getField<jni::JString>("expectedSha256");
52
+ jni::local_ref<jni::JString> expectedSha256 = this->getFieldValue(fieldExpectedSha256);
53
+ static const auto fieldMaxBytes = clazz->getField<double>("maxBytes");
54
+ double maxBytes = this->getFieldValue(fieldMaxBytes);
55
+ static const auto fieldOverallDeadlineSeconds = clazz->getField<jni::JDouble>("overallDeadlineSeconds");
56
+ jni::local_ref<jni::JDouble> overallDeadlineSeconds = this->getFieldValue(fieldOverallDeadlineSeconds);
57
+ return FirmwareArtifactDownloadParams(
58
+ taskId->toStdString(),
59
+ transactionId->toStdString(),
60
+ leaseRef->toStdString(),
61
+ artifactId->toStdString(),
62
+ url->toStdString(),
63
+ routeType->toStdString(),
64
+ resolvedIp != nullptr ? std::make_optional(resolvedIp->toStdString()) : std::nullopt,
65
+ expectedSize != nullptr ? std::make_optional(expectedSize->value()) : std::nullopt,
66
+ expectedSha256 != nullptr ? std::make_optional(expectedSha256->toStdString()) : std::nullopt,
67
+ maxBytes,
68
+ overallDeadlineSeconds != nullptr ? std::make_optional(overallDeadlineSeconds->value()) : std::nullopt
69
+ );
70
+ }
71
+
72
+ public:
73
+ /**
74
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
75
+ */
76
+ [[maybe_unused]]
77
+ static jni::local_ref<JFirmwareArtifactDownloadParams::javaobject> fromCpp(const FirmwareArtifactDownloadParams& value) {
78
+ using JSignature = JFirmwareArtifactDownloadParams(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JString>, double, jni::alias_ref<jni::JDouble>);
79
+ static const auto clazz = javaClassStatic();
80
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
81
+ return create(
82
+ clazz,
83
+ jni::make_jstring(value.taskId),
84
+ jni::make_jstring(value.transactionId),
85
+ jni::make_jstring(value.leaseRef),
86
+ jni::make_jstring(value.artifactId),
87
+ jni::make_jstring(value.url),
88
+ jni::make_jstring(value.routeType),
89
+ value.resolvedIp.has_value() ? jni::make_jstring(value.resolvedIp.value()) : nullptr,
90
+ value.expectedSize.has_value() ? jni::JDouble::valueOf(value.expectedSize.value()) : nullptr,
91
+ value.expectedSha256.has_value() ? jni::make_jstring(value.expectedSha256.value()) : nullptr,
92
+ value.maxBytes,
93
+ value.overallDeadlineSeconds.has_value() ? jni::JDouble::valueOf(value.overallDeadlineSeconds.value()) : nullptr
94
+ );
95
+ }
96
+ };
97
+
98
+ } // namespace margelo::nitro::reactnativerangedownloader
@@ -0,0 +1,57 @@
1
+ ///
2
+ /// JFirmwareArtifactLease.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "FirmwareArtifactLease.hpp"
12
+
13
+ #include <string>
14
+
15
+ namespace margelo::nitro::reactnativerangedownloader {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "FirmwareArtifactLease" and the the Kotlin data class "FirmwareArtifactLease".
21
+ */
22
+ struct JFirmwareArtifactLease final: public jni::JavaClass<JFirmwareArtifactLease> {
23
+ public:
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativerangedownloader/FirmwareArtifactLease;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct FirmwareArtifactLease by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ FirmwareArtifactLease toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldLeaseRef = clazz->getField<jni::JString>("leaseRef");
35
+ jni::local_ref<jni::JString> leaseRef = this->getFieldValue(fieldLeaseRef);
36
+ return FirmwareArtifactLease(
37
+ leaseRef->toStdString()
38
+ );
39
+ }
40
+
41
+ public:
42
+ /**
43
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
44
+ */
45
+ [[maybe_unused]]
46
+ static jni::local_ref<JFirmwareArtifactLease::javaobject> fromCpp(const FirmwareArtifactLease& value) {
47
+ using JSignature = JFirmwareArtifactLease(jni::alias_ref<jni::JString>);
48
+ static const auto clazz = javaClassStatic();
49
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
50
+ return create(
51
+ clazz,
52
+ jni::make_jstring(value.leaseRef)
53
+ );
54
+ }
55
+ };
56
+
57
+ } // namespace margelo::nitro::reactnativerangedownloader