ledger-core
DatabaseBlob.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from database.djinni
3 
4 #ifndef DJINNI_GENERATED_DATABASEBLOB_HPP_JNI_
5 #define DJINNI_GENERATED_DATABASEBLOB_HPP_JNI_
6 
7 #include "../../api/DatabaseBlob.hpp"
8 #include "djinni_support.hpp"
9 
10 namespace djinni_generated {
11 
12 class DatabaseBlob final : ::djinni::JniInterface<::ledger::core::api::DatabaseBlob, DatabaseBlob> {
13 public:
14  using CppType = std::shared_ptr<::ledger::core::api::DatabaseBlob>;
15  using CppOptType = std::shared_ptr<::ledger::core::api::DatabaseBlob>;
16  using JniType = jobject;
17 
18  using Boxed = DatabaseBlob;
19 
20  ~DatabaseBlob();
21 
22  static CppType toCpp(JNIEnv* jniEnv, JniType j) { return ::djinni::JniClass<DatabaseBlob>::get()._fromJava(jniEnv, j); }
23  static ::djinni::LocalRef<JniType> fromCppOpt(JNIEnv* jniEnv, const CppOptType& c) { return {jniEnv, ::djinni::JniClass<DatabaseBlob>::get()._toJava(jniEnv, c)}; }
24  static ::djinni::LocalRef<JniType> fromCpp(JNIEnv* jniEnv, const CppType& c) { return fromCppOpt(jniEnv, c); }
25 
26 private:
27  DatabaseBlob();
28  friend ::djinni::JniClass<DatabaseBlob>;
29  friend ::djinni::JniInterface<::ledger::core::api::DatabaseBlob, DatabaseBlob>;
30 
31  class JavaProxy final : ::djinni::JavaProxyHandle<JavaProxy>, public ::ledger::core::api::DatabaseBlob
32  {
33  public:
34  JavaProxy(JniType j);
35  ~JavaProxy();
36 
37  std::vector<uint8_t> read(int64_t offset, int64_t length) override;
38  int64_t write(int64_t offset, const std::vector<uint8_t> & data) override;
39  int64_t append(const std::vector<uint8_t> & data) override;
40  int64_t trim(int64_t newLen) override;
41  int64_t size() override;
42 
43  private:
44  friend ::djinni::JniInterface<::ledger::core::api::DatabaseBlob, ::djinni_generated::DatabaseBlob>;
45  };
46 
47  const ::djinni::GlobalRef<jclass> clazz { ::djinni::jniFindClass("co/ledger/core/DatabaseBlob") };
48  const jmethodID method_read { ::djinni::jniGetMethodID(clazz.get(), "read", "(JJ)[B") };
49  const jmethodID method_write { ::djinni::jniGetMethodID(clazz.get(), "write", "(J[B)J") };
50  const jmethodID method_append { ::djinni::jniGetMethodID(clazz.get(), "append", "([B)J") };
51  const jmethodID method_trim { ::djinni::jniGetMethodID(clazz.get(), "trim", "(J)J") };
52  const jmethodID method_size { ::djinni::jniGetMethodID(clazz.get(), "size", "()J") };
53 };
54 
55 } // namespace djinni_generated
56 #endif //DJINNI_GENERATED_DATABASEBLOB_HPP_JNI_
Definition: DatabaseBlob.hpp:12
Definition: Account.cpp:22
Definition: proxy_cache_interface.hpp:131
Definition: djinni_support.hpp:223
Definition: djinni_support.hpp:379
Definition: DatabaseBlob.hpp:20