Chromium Code Reviews| Index: content/browser/renderer_host/java/java_bound_object.cc |
| diff --git a/content/browser/renderer_host/java/java_bound_object.cc b/content/browser/renderer_host/java/java_bound_object.cc |
| index e139d4696a775748068d49d9434b00894d9a8b92..ff9a4bbb3e2f90602ff7abf42f218f0a1667531e 100644 |
| --- a/content/browser/renderer_host/java/java_bound_object.cc |
| +++ b/content/browser/renderer_host/java/java_bound_object.cc |
| @@ -15,8 +15,8 @@ |
| using base::StringPrintf; |
| using base::android::AttachCurrentThread; |
| using base::android::ConvertUTF8ToJavaString; |
| +using base::android::GetMethodIDFromClassName; |
| using base::android::JavaRef; |
| -using base::android::MethodID; |
| using base::android::ScopedJavaGlobalRef; |
| using base::android::ScopedJavaLocalRef; |
| using WebKit::WebBindings; |
| @@ -481,34 +481,6 @@ jvalue CoerceJavaScriptValueToJavaValue(const NPVariant& variant, |
| return jvalue(); |
| } |
| -class ObjectGetClassID : public MethodID { |
| - public: |
| - static ObjectGetClassID* GetInstance() { |
| - return Singleton<ObjectGetClassID>::get(); |
| - } |
| - private: |
| - friend struct DefaultSingletonTraits<ObjectGetClassID>; |
| - ObjectGetClassID() |
| - : MethodID(AttachCurrentThread(), "java/lang/Object", "getClass", |
| - "()Ljava/lang/Class;") { |
| - } |
| - DISALLOW_COPY_AND_ASSIGN(ObjectGetClassID); |
| -}; |
| - |
| -class ClassGetMethodsID : public MethodID { |
| - public: |
| - static ClassGetMethodsID* GetInstance() { |
| - return Singleton<ClassGetMethodsID>::get(); |
| - } |
| - private: |
| - friend struct DefaultSingletonTraits<ClassGetMethodsID>; |
| - ClassGetMethodsID() |
| - : MethodID(AttachCurrentThread(), "java/lang/Class", "getMethods", |
| - "()[Ljava/lang/reflect/Method;") { |
| - } |
| - DISALLOW_COPY_AND_ASSIGN(ClassGetMethodsID); |
| -}; |
| - |
| } // namespace |
| @@ -591,11 +563,17 @@ void JavaBoundObject::EnsureMethodsAreSetUp() const { |
| JNIEnv* env = AttachCurrentThread(); |
| ScopedJavaLocalRef<jclass> clazz(env, static_cast<jclass>( |
| - env->CallObjectMethod(java_object_, |
| - ObjectGetClassID::GetInstance()->id()))); |
| + env->CallObjectMethod(java_object_, GetMethodIDFromClassName( |
| + env, |
| + "java/lang/Object", |
| + "getClass", |
| + "()Ljava/lang/Class;")))); |
|
joth
2011/12/02 17:35:36
No problem with named constants, but fwiw these li
|
| ScopedJavaLocalRef<jobjectArray> methods(env, static_cast<jobjectArray>( |
| - env->CallObjectMethod(clazz.obj(), |
| - ClassGetMethodsID::GetInstance()->id()))); |
| + env->CallObjectMethod(clazz.obj(), GetMethodIDFromClassName( |
| + env, |
| + "java/lang/Class", |
| + "getMethods", |
| + "()[Ljava/lang/reflect/Method;")))); |
| size_t num_methods = env->GetArrayLength(methods.obj()); |
| DCHECK(num_methods) << "Java objects always have public methods"; |
| for (size_t i = 0; i < num_methods; ++i) { |