react-native-nitro-fetch 0.1.6 → 0.2.0
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.
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/margelo/nitro/nitrofetch/AutoPrefetcher.kt +3 -1
- package/android/src/main/java/com/margelo/nitro/nitrofetch/CronetExtensions.kt +31 -0
- package/android/src/main/java/com/margelo/nitro/nitrofetch/NitroCronet.kt +89 -0
- package/android/src/main/java/com/margelo/nitro/nitrofetch/NitroFetchClient.kt +115 -28
- package/android/src/main/java/com/margelo/nitro/nitrofetch/NitroUrlRequest.kt +35 -0
- package/android/src/main/java/com/margelo/nitro/nitrofetch/NitroUrlRequestBuilder.kt +181 -0
- package/ios/HybridNitroCronet.swift +31 -0
- package/ios/HybridUrlRequest.swift +41 -0
- package/ios/HybridUrlRequestBuilder.swift +255 -0
- package/ios/NitroAutoPrefetcher.swift +3 -1
- package/ios/NitroFetchClient.swift +87 -5
- package/ios/URLSessionExtensions.swift +36 -0
- package/lib/module/NitroCronet.nitro.js +4 -0
- package/lib/module/NitroCronet.nitro.js.map +1 -0
- package/lib/module/NitroInstances.js +1 -0
- package/lib/module/NitroInstances.js.map +1 -1
- package/lib/module/fetch.js +179 -9
- package/lib/module/fetch.js.map +1 -1
- package/lib/typescript/src/NitroCronet.nitro.d.ts +53 -0
- package/lib/typescript/src/NitroCronet.nitro.d.ts.map +1 -0
- package/lib/typescript/src/NitroFetch.nitro.d.ts +10 -0
- package/lib/typescript/src/NitroFetch.nitro.d.ts.map +1 -1
- package/lib/typescript/src/NitroInstances.d.ts +3 -1
- package/lib/typescript/src/NitroInstances.d.ts.map +1 -1
- package/lib/typescript/src/fetch.d.ts +5 -2
- package/lib/typescript/src/fetch.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/nitro.json +34 -6
- package/nitrogen/generated/android/c++/JFunc_void_UrlResponseInfo.hpp +82 -0
- package/nitrogen/generated/android/c++/JFunc_void_UrlResponseInfo_std__shared_ptr_ArrayBuffer__double.hpp +84 -0
- package/nitrogen/generated/android/c++/JFunc_void_UrlResponseInfo_std__string.hpp +82 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__optional_UrlResponseInfo_.hpp +83 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__optional_UrlResponseInfo__RequestException.hpp +85 -0
- package/nitrogen/generated/android/c++/JHttpHeader.hpp +61 -0
- package/nitrogen/generated/android/c++/JHybridNativeStorageSpec.cpp +23 -16
- package/nitrogen/generated/android/c++/JHybridNativeStorageSpec.hpp +20 -21
- package/nitrogen/generated/android/c++/JHybridNitroCronetSpec.cpp +57 -0
- package/nitrogen/generated/android/c++/JHybridNitroCronetSpec.hpp +63 -0
- package/nitrogen/generated/android/c++/JHybridNitroFetchClientSpec.cpp +32 -16
- package/nitrogen/generated/android/c++/JHybridNitroFetchClientSpec.hpp +21 -21
- package/nitrogen/generated/android/c++/JHybridNitroFetchSpec.cpp +22 -15
- package/nitrogen/generated/android/c++/JHybridNitroFetchSpec.hpp +20 -21
- package/nitrogen/generated/android/c++/JHybridUrlRequestBuilderSpec.cpp +123 -0
- package/nitrogen/generated/android/c++/JHybridUrlRequestBuilderSpec.hpp +73 -0
- package/nitrogen/generated/android/c++/JHybridUrlRequestSpec.cpp +69 -0
- package/nitrogen/generated/android/c++/JHybridUrlRequestSpec.hpp +67 -0
- package/nitrogen/generated/android/c++/JNitroFormDataPart.hpp +74 -0
- package/nitrogen/generated/android/c++/JNitroHeader.hpp +7 -3
- package/nitrogen/generated/android/c++/JNitroRequest.hpp +39 -6
- package/nitrogen/generated/android/c++/JNitroRequestMethod.hpp +9 -10
- package/nitrogen/generated/android/c++/JNitroResponse.hpp +9 -4
- package/nitrogen/generated/android/c++/JRequestException.hpp +57 -0
- package/nitrogen/generated/android/c++/JUrlResponseInfo.hpp +146 -0
- package/nitrogen/generated/android/c++/JVariant_ArrayBuffer_String.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_ArrayBuffer_String.hpp +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/Func_void_UrlResponseInfo.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/Func_void_UrlResponseInfo_std__shared_ptr_ArrayBuffer__double.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/Func_void_UrlResponseInfo_std__string.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/Func_void_std__optional_UrlResponseInfo_.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/Func_void_std__optional_UrlResponseInfo__RequestException.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HttpHeader.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridNativeStorageSpec.kt +18 -16
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridNitroCronetSpec.kt +54 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridNitroFetchClientSpec.kt +23 -16
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridNitroFetchSpec.kt +18 -16
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridUrlRequestBuilderSpec.kt +125 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridUrlRequestSpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/NitroFormDataPart.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/NitroHeader.kt +19 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/NitroRequest.kt +40 -25
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/NitroRequestMethod.kt +3 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/NitroResponse.kt +39 -30
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/RequestException.kt +38 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/UrlResponseInfo.kt +65 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/Variant_ArrayBuffer_String.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/nitrofetchOnLoad.kt +1 -1
- package/nitrogen/generated/android/nitrofetch+autolinking.cmake +8 -1
- package/nitrogen/generated/android/nitrofetch+autolinking.gradle +1 -1
- package/nitrogen/generated/android/nitrofetchOnLoad.cpp +85 -33
- package/nitrogen/generated/android/nitrofetchOnLoad.hpp +14 -5
- package/nitrogen/generated/ios/NitroFetch+autolinking.rb +2 -2
- package/nitrogen/generated/ios/NitroFetch-Swift-Cxx-Bridge.cpp +102 -10
- package/nitrogen/generated/ios/NitroFetch-Swift-Cxx-Bridge.hpp +359 -24
- package/nitrogen/generated/ios/NitroFetch-Swift-Cxx-Umbrella.hpp +32 -1
- package/nitrogen/generated/ios/NitroFetchAutolinking.mm +9 -1
- package/nitrogen/generated/ios/NitroFetchAutolinking.swift +29 -22
- package/nitrogen/generated/ios/c++/HybridNativeStorageSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNativeStorageSpecSwift.hpp +10 -1
- package/nitrogen/generated/ios/c++/HybridNitroCronetSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridNitroCronetSpecSwift.hpp +85 -0
- package/nitrogen/generated/ios/c++/HybridNitroFetchClientSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNitroFetchClientSpecSwift.hpp +22 -4
- package/nitrogen/generated/ios/c++/HybridNitroFetchSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNitroFetchSpecSwift.hpp +10 -1
- package/nitrogen/generated/ios/c++/HybridUrlRequestBuilderSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridUrlRequestBuilderSpecSwift.hpp +163 -0
- package/nitrogen/generated/ios/c++/HybridUrlRequestSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridUrlRequestSpecSwift.hpp +106 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +1 -2
- package/nitrogen/generated/ios/swift/Func_void_NitroResponse.swift +1 -2
- package/nitrogen/generated/ios/swift/Func_void_UrlResponseInfo.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_UrlResponseInfo_std__shared_ptr_ArrayBuffer__double.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_UrlResponseInfo_std__string.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -2
- package/nitrogen/generated/ios/swift/Func_void_std__optional_UrlResponseInfo_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_UrlResponseInfo__RequestException.swift +46 -0
- package/nitrogen/generated/ios/swift/HttpHeader.swift +34 -0
- package/nitrogen/generated/ios/swift/HybridNativeStorageSpec.swift +10 -4
- package/nitrogen/generated/ios/swift/HybridNativeStorageSpec_cxx.swift +18 -3
- package/nitrogen/generated/ios/swift/HybridNitroCronetSpec.swift +55 -0
- package/nitrogen/generated/ios/swift/HybridNitroCronetSpec_cxx.swift +141 -0
- package/nitrogen/generated/ios/swift/HybridNitroFetchClientSpec.swift +11 -4
- package/nitrogen/generated/ios/swift/HybridNitroFetchClientSpec_cxx.swift +29 -3
- package/nitrogen/generated/ios/swift/HybridNitroFetchSpec.swift +10 -4
- package/nitrogen/generated/ios/swift/HybridNitroFetchSpec_cxx.swift +18 -3
- package/nitrogen/generated/ios/swift/HybridUrlRequestBuilderSpec.swift +65 -0
- package/nitrogen/generated/ios/swift/HybridUrlRequestBuilderSpec_cxx.swift +305 -0
- package/nitrogen/generated/ios/swift/HybridUrlRequestSpec.swift +59 -0
- package/nitrogen/generated/ios/swift/HybridUrlRequestSpec_cxx.swift +182 -0
- package/nitrogen/generated/ios/swift/NitroFormDataPart.swift +101 -0
- package/nitrogen/generated/ios/swift/NitroHeader.swift +5 -17
- package/nitrogen/generated/ios/swift/NitroRequest.swift +111 -121
- package/nitrogen/generated/ios/swift/NitroRequestMethod.swift +1 -1
- package/nitrogen/generated/ios/swift/NitroResponse.swift +40 -97
- package/nitrogen/generated/ios/swift/RequestException.swift +29 -0
- package/nitrogen/generated/ios/swift/UrlResponseInfo.swift +118 -0
- package/nitrogen/generated/ios/swift/Variant_ArrayBuffer_String.swift +18 -0
- package/nitrogen/generated/shared/c++/HttpHeader.hpp +87 -0
- package/nitrogen/generated/shared/c++/HybridNativeStorageSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNativeStorageSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNitroCronetSpec.cpp +21 -0
- package/nitrogen/generated/shared/c++/HybridNitroCronetSpec.hpp +65 -0
- package/nitrogen/generated/shared/c++/HybridNitroFetchClientSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridNitroFetchClientSpec.hpp +3 -1
- package/nitrogen/generated/shared/c++/HybridNitroFetchSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNitroFetchSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUrlRequestBuilderSpec.cpp +31 -0
- package/nitrogen/generated/shared/c++/HybridUrlRequestBuilderSpec.hpp +85 -0
- package/nitrogen/generated/shared/c++/HybridUrlRequestSpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridUrlRequestSpec.hpp +66 -0
- package/nitrogen/generated/shared/c++/NitroFormDataPart.hpp +100 -0
- package/nitrogen/generated/shared/c++/NitroHeader.hpp +24 -8
- package/nitrogen/generated/shared/c++/NitroRequest.hpp +51 -24
- package/nitrogen/generated/shared/c++/NitroRequestMethod.hpp +1 -1
- package/nitrogen/generated/shared/c++/NitroResponse.hpp +42 -26
- package/nitrogen/generated/shared/c++/RequestException.hpp +83 -0
- package/nitrogen/generated/shared/c++/UrlResponseInfo.hpp +123 -0
- package/package.json +10 -10
- package/src/NitroCronet.nitro.ts +72 -0
- package/src/NitroFetch.nitro.ts +28 -6
- package/src/NitroInstances.ts +4 -0
- package/src/fetch.ts +214 -13
- package/src/index.tsx +1 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JHybridNitroFetchClientSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "JHybridNitroFetchClientSpec.hpp"
|
|
@@ -15,6 +15,8 @@ namespace margelo::nitro::nitrofetch { struct NitroHeader; }
|
|
|
15
15
|
namespace margelo::nitro::nitrofetch { struct NitroRequest; }
|
|
16
16
|
// Forward declaration of `NitroRequestMethod` to properly resolve imports.
|
|
17
17
|
namespace margelo::nitro::nitrofetch { enum class NitroRequestMethod; }
|
|
18
|
+
// Forward declaration of `NitroFormDataPart` to properly resolve imports.
|
|
19
|
+
namespace margelo::nitro::nitrofetch { struct NitroFormDataPart; }
|
|
18
20
|
|
|
19
21
|
#include "NitroResponse.hpp"
|
|
20
22
|
#include <NitroModules/Promise.hpp>
|
|
@@ -25,31 +27,41 @@ namespace margelo::nitro::nitrofetch { enum class NitroRequestMethod; }
|
|
|
25
27
|
#include <vector>
|
|
26
28
|
#include "JNitroHeader.hpp"
|
|
27
29
|
#include <optional>
|
|
30
|
+
#include <NitroModules/JUnit.hpp>
|
|
28
31
|
#include "NitroRequest.hpp"
|
|
29
32
|
#include "JNitroRequest.hpp"
|
|
30
33
|
#include "NitroRequestMethod.hpp"
|
|
31
34
|
#include "JNitroRequestMethod.hpp"
|
|
35
|
+
#include "NitroFormDataPart.hpp"
|
|
36
|
+
#include "JNitroFormDataPart.hpp"
|
|
32
37
|
|
|
33
38
|
namespace margelo::nitro::nitrofetch {
|
|
34
39
|
|
|
35
|
-
|
|
36
|
-
|
|
40
|
+
std::shared_ptr<JHybridNitroFetchClientSpec> JHybridNitroFetchClientSpec::JavaPart::getJHybridNitroFetchClientSpec() {
|
|
41
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
42
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridNitroFetchClientSpec>(hybridObject);
|
|
43
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
44
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridNitroFetchClientSpec!");
|
|
45
|
+
}
|
|
46
|
+
return castHybridObject;
|
|
37
47
|
}
|
|
38
48
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
makeNativeMethod("initHybrid", JHybridNitroFetchClientSpec::initHybrid),
|
|
42
|
-
});
|
|
49
|
+
jni::local_ref<JHybridNitroFetchClientSpec::CxxPart::jhybriddata> JHybridNitroFetchClientSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
50
|
+
return makeCxxInstance(jThis);
|
|
43
51
|
}
|
|
44
52
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
53
|
+
std::shared_ptr<JHybridObject> JHybridNitroFetchClientSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
54
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridNitroFetchClientSpec::JavaPart>(javaPart);
|
|
55
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
56
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridNitroFetchClientSpec::JavaPart!");
|
|
57
|
+
}
|
|
58
|
+
return std::make_shared<JHybridNitroFetchClientSpec>(castJavaPart);
|
|
48
59
|
}
|
|
49
60
|
|
|
50
|
-
void JHybridNitroFetchClientSpec::
|
|
51
|
-
|
|
52
|
-
|
|
61
|
+
void JHybridNitroFetchClientSpec::CxxPart::registerNatives() {
|
|
62
|
+
registerHybrid({
|
|
63
|
+
makeNativeMethod("initHybrid", JHybridNitroFetchClientSpec::CxxPart::initHybrid),
|
|
64
|
+
});
|
|
53
65
|
}
|
|
54
66
|
|
|
55
67
|
// Properties
|
|
@@ -57,7 +69,7 @@ namespace margelo::nitro::nitrofetch {
|
|
|
57
69
|
|
|
58
70
|
// Methods
|
|
59
71
|
std::shared_ptr<Promise<NitroResponse>> JHybridNitroFetchClientSpec::request(const NitroRequest& req) {
|
|
60
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JNitroRequest> /* req */)>("request");
|
|
72
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JNitroRequest> /* req */)>("request");
|
|
61
73
|
auto __result = method(_javaPart, JNitroRequest::fromCpp(req));
|
|
62
74
|
return [&]() {
|
|
63
75
|
auto __promise = Promise<NitroResponse>::create();
|
|
@@ -73,7 +85,7 @@ namespace margelo::nitro::nitrofetch {
|
|
|
73
85
|
}();
|
|
74
86
|
}
|
|
75
87
|
std::shared_ptr<Promise<void>> JHybridNitroFetchClientSpec::prefetch(const NitroRequest& req) {
|
|
76
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JNitroRequest> /* req */)>("prefetch");
|
|
88
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JNitroRequest> /* req */)>("prefetch");
|
|
77
89
|
auto __result = method(_javaPart, JNitroRequest::fromCpp(req));
|
|
78
90
|
return [&]() {
|
|
79
91
|
auto __promise = Promise<void>::create();
|
|
@@ -88,9 +100,13 @@ namespace margelo::nitro::nitrofetch {
|
|
|
88
100
|
}();
|
|
89
101
|
}
|
|
90
102
|
NitroResponse JHybridNitroFetchClientSpec::requestSync(const NitroRequest& req) {
|
|
91
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JNitroResponse>(jni::alias_ref<JNitroRequest> /* req */)>("requestSync");
|
|
103
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JNitroResponse>(jni::alias_ref<JNitroRequest> /* req */)>("requestSync");
|
|
92
104
|
auto __result = method(_javaPart, JNitroRequest::fromCpp(req));
|
|
93
105
|
return __result->toCpp();
|
|
94
106
|
}
|
|
107
|
+
void JHybridNitroFetchClientSpec::cancelRequest(const std::string& requestId) {
|
|
108
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* requestId */)>("cancelRequest");
|
|
109
|
+
method(_javaPart, jni::make_jstring(requestId));
|
|
110
|
+
}
|
|
95
111
|
|
|
96
112
|
} // namespace margelo::nitro::nitrofetch
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNitroFetchClientSpec.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -18,32 +18,33 @@ namespace margelo::nitro::nitrofetch {
|
|
|
18
18
|
|
|
19
19
|
using namespace facebook;
|
|
20
20
|
|
|
21
|
-
class JHybridNitroFetchClientSpec: public
|
|
22
|
-
public virtual HybridNitroFetchClientSpec {
|
|
21
|
+
class JHybridNitroFetchClientSpec: public virtual HybridNitroFetchClientSpec, public virtual JHybridObject {
|
|
23
22
|
public:
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
HybridBase
|
|
33
|
-
|
|
23
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
|
|
24
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridNitroFetchClientSpec;";
|
|
25
|
+
std::shared_ptr<JHybridNitroFetchClientSpec> getJHybridNitroFetchClientSpec();
|
|
26
|
+
};
|
|
27
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
|
|
28
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridNitroFetchClientSpec$CxxPart;";
|
|
29
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
30
|
+
static void registerNatives();
|
|
31
|
+
using HybridBase::HybridBase;
|
|
32
|
+
protected:
|
|
33
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
34
|
+
};
|
|
34
35
|
|
|
35
36
|
public:
|
|
37
|
+
explicit JHybridNitroFetchClientSpec(const jni::local_ref<JHybridNitroFetchClientSpec::JavaPart>& javaPart):
|
|
38
|
+
HybridObject(HybridNitroFetchClientSpec::TAG),
|
|
39
|
+
JHybridObject(javaPart),
|
|
40
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
36
41
|
~JHybridNitroFetchClientSpec() override {
|
|
37
42
|
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
38
43
|
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
39
44
|
}
|
|
40
45
|
|
|
41
46
|
public:
|
|
42
|
-
|
|
43
|
-
void dispose() noexcept override;
|
|
44
|
-
|
|
45
|
-
public:
|
|
46
|
-
inline const jni::global_ref<JHybridNitroFetchClientSpec::javaobject>& getJavaPart() const noexcept {
|
|
47
|
+
inline const jni::global_ref<JHybridNitroFetchClientSpec::JavaPart>& getJavaPart() const noexcept {
|
|
47
48
|
return _javaPart;
|
|
48
49
|
}
|
|
49
50
|
|
|
@@ -56,11 +57,10 @@ namespace margelo::nitro::nitrofetch {
|
|
|
56
57
|
std::shared_ptr<Promise<NitroResponse>> request(const NitroRequest& req) override;
|
|
57
58
|
std::shared_ptr<Promise<void>> prefetch(const NitroRequest& req) override;
|
|
58
59
|
NitroResponse requestSync(const NitroRequest& req) override;
|
|
60
|
+
void cancelRequest(const std::string& requestId) override;
|
|
59
61
|
|
|
60
62
|
private:
|
|
61
|
-
|
|
62
|
-
using HybridBase::HybridBase;
|
|
63
|
-
jni::global_ref<JHybridNitroFetchClientSpec::javaobject> _javaPart;
|
|
63
|
+
jni::global_ref<JHybridNitroFetchClientSpec::JavaPart> _javaPart;
|
|
64
64
|
};
|
|
65
65
|
|
|
66
66
|
} // namespace margelo::nitro::nitrofetch
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JHybridNitroFetchSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "JHybridNitroFetchSpec.hpp"
|
|
@@ -16,24 +16,31 @@ namespace margelo::nitro::nitrofetch { class HybridNitroFetchClientSpec; }
|
|
|
16
16
|
|
|
17
17
|
namespace margelo::nitro::nitrofetch {
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
std::shared_ptr<JHybridNitroFetchSpec> JHybridNitroFetchSpec::JavaPart::getJHybridNitroFetchSpec() {
|
|
20
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
21
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridNitroFetchSpec>(hybridObject);
|
|
22
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
23
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridNitroFetchSpec!");
|
|
24
|
+
}
|
|
25
|
+
return castHybridObject;
|
|
21
26
|
}
|
|
22
27
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
makeNativeMethod("initHybrid", JHybridNitroFetchSpec::initHybrid),
|
|
26
|
-
});
|
|
28
|
+
jni::local_ref<JHybridNitroFetchSpec::CxxPart::jhybriddata> JHybridNitroFetchSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
29
|
+
return makeCxxInstance(jThis);
|
|
27
30
|
}
|
|
28
31
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
std::shared_ptr<JHybridObject> JHybridNitroFetchSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
33
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridNitroFetchSpec::JavaPart>(javaPart);
|
|
34
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
35
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridNitroFetchSpec::JavaPart!");
|
|
36
|
+
}
|
|
37
|
+
return std::make_shared<JHybridNitroFetchSpec>(castJavaPart);
|
|
32
38
|
}
|
|
33
39
|
|
|
34
|
-
void JHybridNitroFetchSpec::
|
|
35
|
-
|
|
36
|
-
|
|
40
|
+
void JHybridNitroFetchSpec::CxxPart::registerNatives() {
|
|
41
|
+
registerHybrid({
|
|
42
|
+
makeNativeMethod("initHybrid", JHybridNitroFetchSpec::CxxPart::initHybrid),
|
|
43
|
+
});
|
|
37
44
|
}
|
|
38
45
|
|
|
39
46
|
// Properties
|
|
@@ -41,9 +48,9 @@ namespace margelo::nitro::nitrofetch {
|
|
|
41
48
|
|
|
42
49
|
// Methods
|
|
43
50
|
std::shared_ptr<HybridNitroFetchClientSpec> JHybridNitroFetchSpec::createClient() {
|
|
44
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JHybridNitroFetchClientSpec::
|
|
51
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JHybridNitroFetchClientSpec::JavaPart>()>("createClient");
|
|
45
52
|
auto __result = method(_javaPart);
|
|
46
|
-
return __result->
|
|
53
|
+
return __result->getJHybridNitroFetchClientSpec();
|
|
47
54
|
}
|
|
48
55
|
|
|
49
56
|
} // namespace margelo::nitro::nitrofetch
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNitroFetchSpec.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -18,32 +18,33 @@ namespace margelo::nitro::nitrofetch {
|
|
|
18
18
|
|
|
19
19
|
using namespace facebook;
|
|
20
20
|
|
|
21
|
-
class JHybridNitroFetchSpec: public
|
|
22
|
-
public virtual HybridNitroFetchSpec {
|
|
21
|
+
class JHybridNitroFetchSpec: public virtual HybridNitroFetchSpec, public virtual JHybridObject {
|
|
23
22
|
public:
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
HybridBase
|
|
33
|
-
|
|
23
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
|
|
24
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridNitroFetchSpec;";
|
|
25
|
+
std::shared_ptr<JHybridNitroFetchSpec> getJHybridNitroFetchSpec();
|
|
26
|
+
};
|
|
27
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
|
|
28
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridNitroFetchSpec$CxxPart;";
|
|
29
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
30
|
+
static void registerNatives();
|
|
31
|
+
using HybridBase::HybridBase;
|
|
32
|
+
protected:
|
|
33
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
34
|
+
};
|
|
34
35
|
|
|
35
36
|
public:
|
|
37
|
+
explicit JHybridNitroFetchSpec(const jni::local_ref<JHybridNitroFetchSpec::JavaPart>& javaPart):
|
|
38
|
+
HybridObject(HybridNitroFetchSpec::TAG),
|
|
39
|
+
JHybridObject(javaPart),
|
|
40
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
36
41
|
~JHybridNitroFetchSpec() override {
|
|
37
42
|
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
38
43
|
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
39
44
|
}
|
|
40
45
|
|
|
41
46
|
public:
|
|
42
|
-
|
|
43
|
-
void dispose() noexcept override;
|
|
44
|
-
|
|
45
|
-
public:
|
|
46
|
-
inline const jni::global_ref<JHybridNitroFetchSpec::javaobject>& getJavaPart() const noexcept {
|
|
47
|
+
inline const jni::global_ref<JHybridNitroFetchSpec::JavaPart>& getJavaPart() const noexcept {
|
|
47
48
|
return _javaPart;
|
|
48
49
|
}
|
|
49
50
|
|
|
@@ -56,9 +57,7 @@ namespace margelo::nitro::nitrofetch {
|
|
|
56
57
|
std::shared_ptr<HybridNitroFetchClientSpec> createClient() override;
|
|
57
58
|
|
|
58
59
|
private:
|
|
59
|
-
|
|
60
|
-
using HybridBase::HybridBase;
|
|
61
|
-
jni::global_ref<JHybridNitroFetchSpec::javaobject> _javaPart;
|
|
60
|
+
jni::global_ref<JHybridNitroFetchSpec::JavaPart> _javaPart;
|
|
62
61
|
};
|
|
63
62
|
|
|
64
63
|
} // namespace margelo::nitro::nitrofetch
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JHybridUrlRequestBuilderSpec.cpp
|
|
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
|
+
#include "JHybridUrlRequestBuilderSpec.hpp"
|
|
9
|
+
|
|
10
|
+
// Forward declaration of `HybridUrlRequestSpec` to properly resolve imports.
|
|
11
|
+
namespace margelo::nitro::nitrofetch { class HybridUrlRequestSpec; }
|
|
12
|
+
// Forward declaration of `UrlResponseInfo` to properly resolve imports.
|
|
13
|
+
namespace margelo::nitro::nitrofetch { struct UrlResponseInfo; }
|
|
14
|
+
// Forward declaration of `HttpHeader` to properly resolve imports.
|
|
15
|
+
namespace margelo::nitro::nitrofetch { struct HttpHeader; }
|
|
16
|
+
// Forward declaration of `RequestException` to properly resolve imports.
|
|
17
|
+
namespace margelo::nitro::nitrofetch { struct RequestException; }
|
|
18
|
+
|
|
19
|
+
#include <memory>
|
|
20
|
+
#include "HybridUrlRequestSpec.hpp"
|
|
21
|
+
#include "JHybridUrlRequestSpec.hpp"
|
|
22
|
+
#include <string>
|
|
23
|
+
#include <NitroModules/ArrayBuffer.hpp>
|
|
24
|
+
#include <variant>
|
|
25
|
+
#include "JVariant_ArrayBuffer_String.hpp"
|
|
26
|
+
#include <NitroModules/JArrayBuffer.hpp>
|
|
27
|
+
#include "UrlResponseInfo.hpp"
|
|
28
|
+
#include <functional>
|
|
29
|
+
#include "JFunc_void_UrlResponseInfo.hpp"
|
|
30
|
+
#include <NitroModules/JNICallable.hpp>
|
|
31
|
+
#include "JUrlResponseInfo.hpp"
|
|
32
|
+
#include <unordered_map>
|
|
33
|
+
#include "HttpHeader.hpp"
|
|
34
|
+
#include <vector>
|
|
35
|
+
#include "JHttpHeader.hpp"
|
|
36
|
+
#include <optional>
|
|
37
|
+
#include "RequestException.hpp"
|
|
38
|
+
#include "JFunc_void_std__optional_UrlResponseInfo__RequestException.hpp"
|
|
39
|
+
#include "JRequestException.hpp"
|
|
40
|
+
#include "JFunc_void_std__optional_UrlResponseInfo_.hpp"
|
|
41
|
+
#include "JFunc_void_UrlResponseInfo_std__string.hpp"
|
|
42
|
+
#include "JFunc_void_UrlResponseInfo_std__shared_ptr_ArrayBuffer__double.hpp"
|
|
43
|
+
|
|
44
|
+
namespace margelo::nitro::nitrofetch {
|
|
45
|
+
|
|
46
|
+
std::shared_ptr<JHybridUrlRequestBuilderSpec> JHybridUrlRequestBuilderSpec::JavaPart::getJHybridUrlRequestBuilderSpec() {
|
|
47
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
48
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridUrlRequestBuilderSpec>(hybridObject);
|
|
49
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
50
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridUrlRequestBuilderSpec!");
|
|
51
|
+
}
|
|
52
|
+
return castHybridObject;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
jni::local_ref<JHybridUrlRequestBuilderSpec::CxxPart::jhybriddata> JHybridUrlRequestBuilderSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
56
|
+
return makeCxxInstance(jThis);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
std::shared_ptr<JHybridObject> JHybridUrlRequestBuilderSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
60
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridUrlRequestBuilderSpec::JavaPart>(javaPart);
|
|
61
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
62
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridUrlRequestBuilderSpec::JavaPart!");
|
|
63
|
+
}
|
|
64
|
+
return std::make_shared<JHybridUrlRequestBuilderSpec>(castJavaPart);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
void JHybridUrlRequestBuilderSpec::CxxPart::registerNatives() {
|
|
68
|
+
registerHybrid({
|
|
69
|
+
makeNativeMethod("initHybrid", JHybridUrlRequestBuilderSpec::CxxPart::initHybrid),
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// Properties
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
// Methods
|
|
77
|
+
void JHybridUrlRequestBuilderSpec::setHttpMethod(const std::string& httpMethod) {
|
|
78
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* httpMethod */)>("setHttpMethod");
|
|
79
|
+
method(_javaPart, jni::make_jstring(httpMethod));
|
|
80
|
+
}
|
|
81
|
+
void JHybridUrlRequestBuilderSpec::addHeader(const std::string& name, const std::string& value) {
|
|
82
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* name */, jni::alias_ref<jni::JString> /* value */)>("addHeader");
|
|
83
|
+
method(_javaPart, jni::make_jstring(name), jni::make_jstring(value));
|
|
84
|
+
}
|
|
85
|
+
void JHybridUrlRequestBuilderSpec::setUploadBody(const std::variant<std::shared_ptr<ArrayBuffer>, std::string>& body) {
|
|
86
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JVariant_ArrayBuffer_String> /* body */)>("setUploadBody");
|
|
87
|
+
method(_javaPart, JVariant_ArrayBuffer_String::fromCpp(body));
|
|
88
|
+
}
|
|
89
|
+
void JHybridUrlRequestBuilderSpec::disableCache() {
|
|
90
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("disableCache");
|
|
91
|
+
method(_javaPart);
|
|
92
|
+
}
|
|
93
|
+
void JHybridUrlRequestBuilderSpec::onSucceeded(const std::function<void(const UrlResponseInfo& /* info */)>& callback) {
|
|
94
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_UrlResponseInfo::javaobject> /* callback */)>("onSucceeded_cxx");
|
|
95
|
+
method(_javaPart, JFunc_void_UrlResponseInfo_cxx::fromCpp(callback));
|
|
96
|
+
}
|
|
97
|
+
void JHybridUrlRequestBuilderSpec::onFailed(const std::function<void(const std::optional<UrlResponseInfo>& /* info */, const RequestException& /* error */)>& callback) {
|
|
98
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_UrlResponseInfo__RequestException::javaobject> /* callback */)>("onFailed_cxx");
|
|
99
|
+
method(_javaPart, JFunc_void_std__optional_UrlResponseInfo__RequestException_cxx::fromCpp(callback));
|
|
100
|
+
}
|
|
101
|
+
void JHybridUrlRequestBuilderSpec::onCanceled(const std::function<void(const std::optional<UrlResponseInfo>& /* info */)>& callback) {
|
|
102
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_UrlResponseInfo_::javaobject> /* callback */)>("onCanceled_cxx");
|
|
103
|
+
method(_javaPart, JFunc_void_std__optional_UrlResponseInfo__cxx::fromCpp(callback));
|
|
104
|
+
}
|
|
105
|
+
void JHybridUrlRequestBuilderSpec::onRedirectReceived(const std::function<void(const UrlResponseInfo& /* info */, const std::string& /* newLocationUrl */)>& callback) {
|
|
106
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_UrlResponseInfo_std__string::javaobject> /* callback */)>("onRedirectReceived_cxx");
|
|
107
|
+
method(_javaPart, JFunc_void_UrlResponseInfo_std__string_cxx::fromCpp(callback));
|
|
108
|
+
}
|
|
109
|
+
void JHybridUrlRequestBuilderSpec::onResponseStarted(const std::function<void(const UrlResponseInfo& /* info */)>& callback) {
|
|
110
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_UrlResponseInfo::javaobject> /* callback */)>("onResponseStarted_cxx");
|
|
111
|
+
method(_javaPart, JFunc_void_UrlResponseInfo_cxx::fromCpp(callback));
|
|
112
|
+
}
|
|
113
|
+
void JHybridUrlRequestBuilderSpec::onReadCompleted(const std::function<void(const UrlResponseInfo& /* info */, const std::shared_ptr<ArrayBuffer>& /* byteBuffer */, double /* bytesRead */)>& callback) {
|
|
114
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_UrlResponseInfo_std__shared_ptr_ArrayBuffer__double::javaobject> /* callback */)>("onReadCompleted_cxx");
|
|
115
|
+
method(_javaPart, JFunc_void_UrlResponseInfo_std__shared_ptr_ArrayBuffer__double_cxx::fromCpp(callback));
|
|
116
|
+
}
|
|
117
|
+
std::shared_ptr<HybridUrlRequestSpec> JHybridUrlRequestBuilderSpec::build() {
|
|
118
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JHybridUrlRequestSpec::JavaPart>()>("build");
|
|
119
|
+
auto __result = method(_javaPart);
|
|
120
|
+
return __result->getJHybridUrlRequestSpec();
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
} // namespace margelo::nitro::nitrofetch
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridUrlRequestBuilderSpec.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 <NitroModules/JHybridObject.hpp>
|
|
11
|
+
#include <fbjni/fbjni.h>
|
|
12
|
+
#include "HybridUrlRequestBuilderSpec.hpp"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
namespace margelo::nitro::nitrofetch {
|
|
18
|
+
|
|
19
|
+
using namespace facebook;
|
|
20
|
+
|
|
21
|
+
class JHybridUrlRequestBuilderSpec: public virtual HybridUrlRequestBuilderSpec, public virtual JHybridObject {
|
|
22
|
+
public:
|
|
23
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
|
|
24
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridUrlRequestBuilderSpec;";
|
|
25
|
+
std::shared_ptr<JHybridUrlRequestBuilderSpec> getJHybridUrlRequestBuilderSpec();
|
|
26
|
+
};
|
|
27
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
|
|
28
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridUrlRequestBuilderSpec$CxxPart;";
|
|
29
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
30
|
+
static void registerNatives();
|
|
31
|
+
using HybridBase::HybridBase;
|
|
32
|
+
protected:
|
|
33
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
public:
|
|
37
|
+
explicit JHybridUrlRequestBuilderSpec(const jni::local_ref<JHybridUrlRequestBuilderSpec::JavaPart>& javaPart):
|
|
38
|
+
HybridObject(HybridUrlRequestBuilderSpec::TAG),
|
|
39
|
+
JHybridObject(javaPart),
|
|
40
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
41
|
+
~JHybridUrlRequestBuilderSpec() override {
|
|
42
|
+
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
43
|
+
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
public:
|
|
47
|
+
inline const jni::global_ref<JHybridUrlRequestBuilderSpec::JavaPart>& getJavaPart() const noexcept {
|
|
48
|
+
return _javaPart;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public:
|
|
52
|
+
// Properties
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
public:
|
|
56
|
+
// Methods
|
|
57
|
+
void setHttpMethod(const std::string& httpMethod) override;
|
|
58
|
+
void addHeader(const std::string& name, const std::string& value) override;
|
|
59
|
+
void setUploadBody(const std::variant<std::shared_ptr<ArrayBuffer>, std::string>& body) override;
|
|
60
|
+
void disableCache() override;
|
|
61
|
+
void onSucceeded(const std::function<void(const UrlResponseInfo& /* info */)>& callback) override;
|
|
62
|
+
void onFailed(const std::function<void(const std::optional<UrlResponseInfo>& /* info */, const RequestException& /* error */)>& callback) override;
|
|
63
|
+
void onCanceled(const std::function<void(const std::optional<UrlResponseInfo>& /* info */)>& callback) override;
|
|
64
|
+
void onRedirectReceived(const std::function<void(const UrlResponseInfo& /* info */, const std::string& /* newLocationUrl */)>& callback) override;
|
|
65
|
+
void onResponseStarted(const std::function<void(const UrlResponseInfo& /* info */)>& callback) override;
|
|
66
|
+
void onReadCompleted(const std::function<void(const UrlResponseInfo& /* info */, const std::shared_ptr<ArrayBuffer>& /* byteBuffer */, double /* bytesRead */)>& callback) override;
|
|
67
|
+
std::shared_ptr<HybridUrlRequestSpec> build() override;
|
|
68
|
+
|
|
69
|
+
private:
|
|
70
|
+
jni::global_ref<JHybridUrlRequestBuilderSpec::JavaPart> _javaPart;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
} // namespace margelo::nitro::nitrofetch
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JHybridUrlRequestSpec.cpp
|
|
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
|
+
#include "JHybridUrlRequestSpec.hpp"
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
namespace margelo::nitro::nitrofetch {
|
|
15
|
+
|
|
16
|
+
std::shared_ptr<JHybridUrlRequestSpec> JHybridUrlRequestSpec::JavaPart::getJHybridUrlRequestSpec() {
|
|
17
|
+
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
18
|
+
auto castHybridObject = std::dynamic_pointer_cast<JHybridUrlRequestSpec>(hybridObject);
|
|
19
|
+
if (castHybridObject == nullptr) [[unlikely]] {
|
|
20
|
+
throw std::runtime_error("Failed to downcast JHybridObject to JHybridUrlRequestSpec!");
|
|
21
|
+
}
|
|
22
|
+
return castHybridObject;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
jni::local_ref<JHybridUrlRequestSpec::CxxPart::jhybriddata> JHybridUrlRequestSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
26
|
+
return makeCxxInstance(jThis);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
std::shared_ptr<JHybridObject> JHybridUrlRequestSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
30
|
+
auto castJavaPart = jni::dynamic_ref_cast<JHybridUrlRequestSpec::JavaPart>(javaPart);
|
|
31
|
+
if (castJavaPart == nullptr) [[unlikely]] {
|
|
32
|
+
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridUrlRequestSpec::JavaPart!");
|
|
33
|
+
}
|
|
34
|
+
return std::make_shared<JHybridUrlRequestSpec>(castJavaPart);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
void JHybridUrlRequestSpec::CxxPart::registerNatives() {
|
|
38
|
+
registerHybrid({
|
|
39
|
+
makeNativeMethod("initHybrid", JHybridUrlRequestSpec::CxxPart::initHybrid),
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// Properties
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
// Methods
|
|
47
|
+
void JHybridUrlRequestSpec::start() {
|
|
48
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("start");
|
|
49
|
+
method(_javaPart);
|
|
50
|
+
}
|
|
51
|
+
void JHybridUrlRequestSpec::followRedirect() {
|
|
52
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("followRedirect");
|
|
53
|
+
method(_javaPart);
|
|
54
|
+
}
|
|
55
|
+
void JHybridUrlRequestSpec::read() {
|
|
56
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("read");
|
|
57
|
+
method(_javaPart);
|
|
58
|
+
}
|
|
59
|
+
void JHybridUrlRequestSpec::cancel() {
|
|
60
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("cancel");
|
|
61
|
+
method(_javaPart);
|
|
62
|
+
}
|
|
63
|
+
bool JHybridUrlRequestSpec::isDone() {
|
|
64
|
+
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("isDone");
|
|
65
|
+
auto __result = method(_javaPart);
|
|
66
|
+
return static_cast<bool>(__result);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
} // namespace margelo::nitro::nitrofetch
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridUrlRequestSpec.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 <NitroModules/JHybridObject.hpp>
|
|
11
|
+
#include <fbjni/fbjni.h>
|
|
12
|
+
#include "HybridUrlRequestSpec.hpp"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
namespace margelo::nitro::nitrofetch {
|
|
18
|
+
|
|
19
|
+
using namespace facebook;
|
|
20
|
+
|
|
21
|
+
class JHybridUrlRequestSpec: public virtual HybridUrlRequestSpec, public virtual JHybridObject {
|
|
22
|
+
public:
|
|
23
|
+
struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
|
|
24
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridUrlRequestSpec;";
|
|
25
|
+
std::shared_ptr<JHybridUrlRequestSpec> getJHybridUrlRequestSpec();
|
|
26
|
+
};
|
|
27
|
+
struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
|
|
28
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrofetch/HybridUrlRequestSpec$CxxPart;";
|
|
29
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
30
|
+
static void registerNatives();
|
|
31
|
+
using HybridBase::HybridBase;
|
|
32
|
+
protected:
|
|
33
|
+
std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
public:
|
|
37
|
+
explicit JHybridUrlRequestSpec(const jni::local_ref<JHybridUrlRequestSpec::JavaPart>& javaPart):
|
|
38
|
+
HybridObject(HybridUrlRequestSpec::TAG),
|
|
39
|
+
JHybridObject(javaPart),
|
|
40
|
+
_javaPart(jni::make_global(javaPart)) {}
|
|
41
|
+
~JHybridUrlRequestSpec() override {
|
|
42
|
+
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
43
|
+
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
public:
|
|
47
|
+
inline const jni::global_ref<JHybridUrlRequestSpec::JavaPart>& getJavaPart() const noexcept {
|
|
48
|
+
return _javaPart;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public:
|
|
52
|
+
// Properties
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
public:
|
|
56
|
+
// Methods
|
|
57
|
+
void start() override;
|
|
58
|
+
void followRedirect() override;
|
|
59
|
+
void read() override;
|
|
60
|
+
void cancel() override;
|
|
61
|
+
bool isDone() override;
|
|
62
|
+
|
|
63
|
+
private:
|
|
64
|
+
jni::global_ref<JHybridUrlRequestSpec::JavaPart> _javaPart;
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
} // namespace margelo::nitro::nitrofetch
|