mirror of
https://github.com/geometer/FBReaderJ.git
synced 2025-10-03 17:59:33 +02:00
return type for static methods
This commit is contained in:
parent
1a3419e95b
commit
e3f7cb9847
3 changed files with 24 additions and 23 deletions
|
@ -134,7 +134,7 @@ bool AndroidUtil::init(JavaVM* jvm) {
|
|||
CHECK_NULL( MID_java_util_Collection_toArray = env->GetMethodID(Class_java_util_Collection->j(), "toArray", "()[Ljava/lang/Object;") );
|
||||
|
||||
Class_java_util_Locale = new JavaClass(env, "java/util/Locale");
|
||||
StaticMethod_java_util_Locale_getDefault = new StaticObjectMethod(*Class_java_util_Locale, "getDefault", "java/util/Locale", "()");
|
||||
StaticMethod_java_util_Locale_getDefault = new StaticObjectMethod(*Class_java_util_Locale, "getDefault", *Class_java_util_Locale, "()");
|
||||
Method_java_util_Locale_getLanguage = new StringMethod(*Class_java_util_Locale, "getLanguage", "()");
|
||||
|
||||
Class_java_io_InputStream = new JavaClass(env, "java/io/InputStream");
|
||||
|
@ -143,7 +143,7 @@ bool AndroidUtil::init(JavaVM* jvm) {
|
|||
Method_java_io_InputStream_skip = new LongMethod(*Class_java_io_InputStream, "skip", "(J)");
|
||||
|
||||
Class_ZLibrary = new JavaClass(env, "org/geometerplus/zlibrary/core/library/ZLibrary");
|
||||
StaticMethod_ZLibrary_Instance = new StaticObjectMethod(*Class_ZLibrary, "Instance", "org/geometerplus/zlibrary/core/library/ZLibrary", "()");
|
||||
StaticMethod_ZLibrary_Instance = new StaticObjectMethod(*Class_ZLibrary, "Instance", *Class_ZLibrary, "()");
|
||||
Method_ZLibrary_getVersionName = new StringMethod(*Class_ZLibrary, "getVersionName", "()");
|
||||
|
||||
Class_NativeFormatPlugin = new JavaClass(env, "org/geometerplus/fbreader/formats/NativeFormatPlugin");
|
||||
|
@ -151,7 +151,7 @@ bool AndroidUtil::init(JavaVM* jvm) {
|
|||
Method_NativeFormatPlugin_supportedFileType = new StringMethod(*Class_NativeFormatPlugin, "supportedFileType", "()");
|
||||
|
||||
Class_PluginCollection = new JavaClass(env, "org/geometerplus/fbreader/formats/PluginCollection");
|
||||
StaticMethod_PluginCollection_Instance = new StaticObjectMethod(*Class_PluginCollection, "Instance", "org/geometerplus/fbreader/formats/PluginCollection", "()");
|
||||
StaticMethod_PluginCollection_Instance = new StaticObjectMethod(*Class_PluginCollection, "Instance", *Class_PluginCollection, "()");
|
||||
|
||||
Class_Encoding = new JavaClass(env, "org/geometerplus/zlibrary/core/encodings/Encoding");
|
||||
Method_Encoding_createConverter = new ObjectMethod(*Class_Encoding, "createConverter", "org/geometerplus/zlibrary/core/encodings/EncodingConverter", "()");
|
||||
|
@ -162,13 +162,13 @@ bool AndroidUtil::init(JavaVM* jvm) {
|
|||
Method_EncodingConverter_reset = new VoidMethod(*Class_EncodingConverter, "reset", "()");
|
||||
|
||||
Class_JavaEncodingCollection = new JavaClass(env, "org/geometerplus/zlibrary/core/encodings/JavaEncodingCollection");
|
||||
StaticMethod_JavaEncodingCollection_Instance = new StaticObjectMethod(*Class_JavaEncodingCollection, "Instance", "org/geometerplus/zlibrary/core/encodings/JavaEncodingCollection", "()");
|
||||
StaticMethod_JavaEncodingCollection_Instance = new StaticObjectMethod(*Class_JavaEncodingCollection, "Instance", *Class_JavaEncodingCollection, "()");
|
||||
Method_JavaEncodingCollection_getEncoding_String = new ObjectMethod(*Class_JavaEncodingCollection, "getEncoding", "org/geometerplus/zlibrary/core/encodings/Encoding", "(Ljava/lang/String;)");
|
||||
Method_JavaEncodingCollection_getEncoding_int = new ObjectMethod(*Class_JavaEncodingCollection, "getEncoding", "org/geometerplus/zlibrary/core/encodings/Encoding", "(I)");
|
||||
Method_JavaEncodingCollection_providesConverterFor = new BooleanMethod(*Class_JavaEncodingCollection, "providesConverterFor", "(Ljava/lang/String;)");
|
||||
|
||||
Class_ZLFile = new JavaClass(env, "org/geometerplus/zlibrary/core/filesystem/ZLFile");
|
||||
StaticMethod_ZLFile_createFileByPath = new StaticObjectMethod(*Class_ZLFile, "createFileByPath", "org/geometerplus/zlibrary/core/filesystem/ZLFile", "(Ljava/lang/String;)");
|
||||
StaticMethod_ZLFile_createFileByPath = new StaticObjectMethod(*Class_ZLFile, "createFileByPath", *Class_ZLFile, "(Ljava/lang/String;)");
|
||||
Method_ZLFile_children = new ObjectMethod(*Class_ZLFile, "children", "java/util/List", "()");
|
||||
Method_ZLFile_exists = new BooleanMethod(*Class_ZLFile, "exists", "()");
|
||||
Method_ZLFile_isDirectory = new BooleanMethod(*Class_ZLFile, "isDirectory", "()");
|
||||
|
@ -180,7 +180,7 @@ bool AndroidUtil::init(JavaVM* jvm) {
|
|||
Constructor_ZLFileImage = new Constructor(*Class_ZLFileImage, "(Ljava/lang/String;Lorg/geometerplus/zlibrary/core/filesystem/ZLFile;Ljava/lang/String;II)V");
|
||||
|
||||
Class_Paths = new JavaClass(env, "org/geometerplus/fbreader/Paths");
|
||||
StaticMethod_Paths_cacheDirectory = new StaticObjectMethod(*Class_Paths, "cacheDirectory", "java/lang/String", "()");
|
||||
StaticMethod_Paths_cacheDirectory = new StaticObjectMethod(*Class_Paths, "cacheDirectory", *Class_java_lang_String, "()");
|
||||
|
||||
Class_Book = new JavaClass(env, "org/geometerplus/fbreader/library/Book");
|
||||
Field_Book_File = new ObjectField(*Class_Book, "File", *Class_ZLFile);
|
||||
|
@ -196,7 +196,7 @@ bool AndroidUtil::init(JavaVM* jvm) {
|
|||
Method_Book_save = new BooleanMethod(*Class_Book, "save", "()");
|
||||
|
||||
Class_Tag = new JavaClass(env, "org/geometerplus/fbreader/library/Tag");
|
||||
StaticMethod_Tag_getTag = new StaticObjectMethod(*Class_Tag, "getTag", "org/geometerplus/fbreader/library/Tag", "(Lorg/geometerplus/fbreader/library/Tag;Ljava/lang/String;)");
|
||||
StaticMethod_Tag_getTag = new StaticObjectMethod(*Class_Tag, "getTag", *Class_Tag, "(Lorg/geometerplus/fbreader/library/Tag;Ljava/lang/String;)");
|
||||
|
||||
Class_NativeBookModel = new JavaClass(env, "org/geometerplus/fbreader/bookmodel/NativeBookModel");
|
||||
Field_NativeBookModel_Book = new ObjectField(*Class_NativeBookModel, "Book", *Class_Book);
|
||||
|
|
|
@ -50,8 +50,8 @@ Member::Member(const JavaClass &cls) : myClass(cls) {
|
|||
Member::~Member() {
|
||||
}
|
||||
|
||||
Constructor::Constructor(const JavaClass &cls, const std::string &signature) : Member(cls) {
|
||||
myId = env().GetMethodID(jClass(), "<init>", signature.c_str());
|
||||
Constructor::Constructor(const JavaClass &cls, const std::string ¶meters) : Member(cls) {
|
||||
myId = env().GetMethodID(jClass(), "<init>", parameters.c_str());
|
||||
}
|
||||
|
||||
jobject Constructor::call(...) {
|
||||
|
@ -69,21 +69,22 @@ Field::Field(const JavaClass &cls, const std::string &name, const JavaType &type
|
|||
Field::~Field() {
|
||||
}
|
||||
|
||||
Method::Method(const JavaClass &cls, const std::string &name, const std::string &signature) : Member(cls), myName(name) {
|
||||
myId = env().GetMethodID(jClass(), name.c_str(), signature.c_str());
|
||||
Method::Method(const JavaClass &cls, const std::string &name, const std::string ¶meters) : Member(cls), myName(name) {
|
||||
myId = env().GetMethodID(jClass(), name.c_str(), parameters.c_str());
|
||||
}
|
||||
|
||||
Method::~Method() {
|
||||
}
|
||||
|
||||
StaticMethod::StaticMethod(const JavaClass &cls, const std::string &name, const std::string &signature) : Member(cls), myName(name) {
|
||||
StaticMethod::StaticMethod(const JavaClass &cls, const std::string &name, const JavaType &returnType, const std::string ¶meters) : Member(cls), myName(name) {
|
||||
const std::string signature = parameters + returnType.code();
|
||||
myId = env().GetStaticMethodID(jClass(), name.c_str(), signature.c_str());
|
||||
}
|
||||
|
||||
StaticMethod::~StaticMethod() {
|
||||
}
|
||||
|
||||
ObjectField::ObjectField(const JavaClass &cls, const std::string &name, const JavaClass &type) : Field(cls, name, type) {
|
||||
ObjectField::ObjectField(const JavaClass &cls, const std::string &name, const JavaType &type) : Field(cls, name, type) {
|
||||
}
|
||||
|
||||
jobject ObjectField::value(jobject obj) const {
|
||||
|
@ -93,7 +94,7 @@ jobject ObjectField::value(jobject obj) const {
|
|||
return val;
|
||||
}
|
||||
|
||||
VoidMethod::VoidMethod(const JavaClass &cls, const std::string &name, const std::string &signature) : Method(cls, name, signature + "V") {
|
||||
VoidMethod::VoidMethod(const JavaClass &cls, const std::string &name, const std::string ¶meters) : Method(cls, name, parameters + "V") {
|
||||
}
|
||||
|
||||
void VoidMethod::call(jobject base, ...) {
|
||||
|
@ -105,7 +106,7 @@ void VoidMethod::call(jobject base, ...) {
|
|||
ZLLogger::Instance().println(JNI_LOGGER_CLASS, "finished VoidMethod " + myName);
|
||||
}
|
||||
|
||||
IntMethod::IntMethod(const JavaClass &cls, const std::string &name, const std::string &signature) : Method(cls, name, signature + "I") {
|
||||
IntMethod::IntMethod(const JavaClass &cls, const std::string &name, const std::string ¶meters) : Method(cls, name, parameters + "I") {
|
||||
}
|
||||
|
||||
jint IntMethod::call(jobject base, ...) {
|
||||
|
@ -118,7 +119,7 @@ jint IntMethod::call(jobject base, ...) {
|
|||
return result;
|
||||
}
|
||||
|
||||
LongMethod::LongMethod(const JavaClass &cls, const std::string &name, const std::string &signature) : Method(cls, name, signature + "J") {
|
||||
LongMethod::LongMethod(const JavaClass &cls, const std::string &name, const std::string ¶meters) : Method(cls, name, parameters + "J") {
|
||||
}
|
||||
|
||||
jlong LongMethod::call(jobject base, ...) {
|
||||
|
@ -131,7 +132,7 @@ jlong LongMethod::call(jobject base, ...) {
|
|||
return result;
|
||||
}
|
||||
|
||||
BooleanMethod::BooleanMethod(const JavaClass &cls, const std::string &name, const std::string &signature) : Method(cls, name, signature + "Z") {
|
||||
BooleanMethod::BooleanMethod(const JavaClass &cls, const std::string &name, const std::string ¶meters) : Method(cls, name, parameters + "Z") {
|
||||
}
|
||||
|
||||
jboolean BooleanMethod::call(jobject base, ...) {
|
||||
|
@ -144,7 +145,7 @@ jboolean BooleanMethod::call(jobject base, ...) {
|
|||
return result;
|
||||
}
|
||||
|
||||
StringMethod::StringMethod(const JavaClass &cls, const std::string &name, const std::string &signature) : Method(cls, name, signature + "Ljava/lang/String;") {
|
||||
StringMethod::StringMethod(const JavaClass &cls, const std::string &name, const std::string ¶meters) : Method(cls, name, parameters + "Ljava/lang/String;") {
|
||||
}
|
||||
|
||||
jstring StringMethod::call(jobject base, ...) {
|
||||
|
@ -157,7 +158,7 @@ jstring StringMethod::call(jobject base, ...) {
|
|||
return result;
|
||||
}
|
||||
|
||||
ObjectMethod::ObjectMethod(const JavaClass &cls, const std::string &name, const std::string &returnType, const std::string &signature) : Method(cls, name, signature + "L" + returnType + ";") {
|
||||
ObjectMethod::ObjectMethod(const JavaClass &cls, const std::string &name, const std::string &returnType, const std::string ¶meters) : Method(cls, name, parameters + "L" + returnType + ";") {
|
||||
}
|
||||
|
||||
jobject ObjectMethod::call(jobject base, ...) {
|
||||
|
@ -170,7 +171,7 @@ jobject ObjectMethod::call(jobject base, ...) {
|
|||
return result;
|
||||
}
|
||||
|
||||
StaticObjectMethod::StaticObjectMethod(const JavaClass &cls, const std::string &name, const std::string &returnType, const std::string &signature) : StaticMethod(cls, name, signature + "L" + returnType + ";") {
|
||||
StaticObjectMethod::StaticObjectMethod(const JavaClass &cls, const std::string &name, const JavaType &returnType, const std::string ¶meters) : StaticMethod(cls, name, returnType, parameters) {
|
||||
}
|
||||
|
||||
jobject StaticObjectMethod::call(...) {
|
||||
|
|
|
@ -107,7 +107,7 @@ protected:
|
|||
class StaticMethod : public Member {
|
||||
|
||||
public:
|
||||
StaticMethod(const JavaClass &cls, const std::string &name, const std::string &signature);
|
||||
StaticMethod(const JavaClass &cls, const std::string &name, const JavaType &returnType, const std::string &signature);
|
||||
virtual ~StaticMethod();
|
||||
|
||||
protected:
|
||||
|
@ -118,7 +118,7 @@ protected:
|
|||
class ObjectField : public Field {
|
||||
|
||||
public:
|
||||
ObjectField(const JavaClass &cls, const std::string &name, const JavaClass &type);
|
||||
ObjectField(const JavaClass &cls, const std::string &name, const JavaType &type);
|
||||
jobject value(jobject obj) const;
|
||||
};
|
||||
|
||||
|
@ -167,7 +167,7 @@ public:
|
|||
class StaticObjectMethod : public StaticMethod {
|
||||
|
||||
public:
|
||||
StaticObjectMethod(const JavaClass &cls, const std::string &name, const std::string &returnType, const std::string &signature);
|
||||
StaticObjectMethod(const JavaClass &cls, const std::string &name, const JavaType &returnType, const std::string &signature);
|
||||
jobject call(...);
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue