Ensure that all the symbols we export are in the KJS
authorrjw <rjw@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 18 Dec 2003 02:49:17 +0000 (02:49 +0000)
committerrjw <rjw@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 18 Dec 2003 02:49:17 +0000 (02:49 +0000)
namespace (3512245).

Also renamed JavaString.characters() to JavaString.UTF8String()
for enhanced clarity.

Added some sanity checking to constructor of JObjectWrapper.

        Reviewed by Dave.

        * ChangeLog:
        * bindings/jni/jni_class.cpp:
        * bindings/jni/jni_class.h:
        * bindings/jni/jni_instance.cpp:
        (JavaInstance::invokeMethod):
        (JObjectWrapper::JObjectWrapper):
        * bindings/jni/jni_instance.h:
        * bindings/jni/jni_runtime.cpp:
        (JavaParameter::JavaParameter):
        (JavaField::JavaField):
        (JavaMethod::JavaMethod):
        (JavaMethod::signature):
        * bindings/jni/jni_runtime.h:
        (KJS::Bindings::JavaString::ascii):
        (KJS::Bindings::JavaString::UTF8String):
        (KJS::Bindings::JavaString::JavaString):
        (KJS::Bindings::JavaString::_commonInit):
        (KJS::Bindings::JavaString::uchars):
        (KJS::Bindings::JavaString::length):
        (KJS::Bindings::JavaString::ustring):
        (KJS::Bindings::JavaParameter::type):
        (KJS::Bindings::JavaField::name):
        (KJS::Bindings::JavaField::type):
        (KJS::Bindings::JavaMethod::name):
        (KJS::Bindings::JavaMethod::returnType):
        * bindings/jni/jni_utility.cpp:
        (KJS::Bindings::getJavaVM):
        (KJS::Bindings::getJNIEnv):
        (KJS::Bindings::callJNIVoidMethod):
        (KJS::Bindings::callJNIObjectMethod):
        (KJS::Bindings::callJNIBooleanMethod):
        (KJS::Bindings::callJNIByteMethod):
        (KJS::Bindings::callJNICharMethod):
        (KJS::Bindings::callJNIShortMethod):
        (KJS::Bindings::callJNIIntMethod):
        (KJS::Bindings::callJNILongMethod):
        (KJS::Bindings::callJNIFloatMethod):
        (KJS::Bindings::callJNIDoubleMethod):
        (KJS::Bindings::callJNIVoidMethodA):
        (KJS::Bindings::callJNIObjectMethodA):
        (KJS::Bindings::callJNIByteMethodA):
        (KJS::Bindings::callJNICharMethodA):
        (KJS::Bindings::callJNIShortMethodA):
        (KJS::Bindings::callJNIIntMethodA):
        (KJS::Bindings::callJNILongMethodA):
        (KJS::Bindings::callJNIFloatMethodA):
        (KJS::Bindings::callJNIDoubleMethodA):
        (KJS::Bindings::callJNIBooleanMethodA):
        (KJS::Bindings::getCharactersFromJString):
        (KJS::Bindings::releaseCharactersForJString):
        (KJS::Bindings::getCharactersFromJStringInEnv):
        (KJS::Bindings::releaseCharactersForJStringInEnv):
        (KJS::Bindings::getUCharactersFromJStringInEnv):
        (KJS::Bindings::releaseUCharactersForJStringInEnv):
        (KJS::Bindings::JNITypeFromClassName):
        (KJS::Bindings::signatureFromPrimitiveType):
        (KJS::Bindings::JNITypeFromPrimitiveType):
        (KJS::Bindings::getJNIField):
        (KJS::Bindings::convertValueToJValue):
        * bindings/jni/jni_utility.h:
        * bindings/jni_jsobject.cpp:
        (KJS::Bindings::JSObject::invoke):
        (KJS::Bindings::JSObject::JSObject):
        (KJS::Bindings::JSObject::call):
        (KJS::Bindings::JSObject::eval):
        (KJS::Bindings::JSObject::getMember):
        (KJS::Bindings::JSObject::setMember):
        (KJS::Bindings::JSObject::removeMember):
        (KJS::Bindings::JSObject::getSlot):
        (KJS::Bindings::JSObject::setSlot):
        (KJS::Bindings::JSObject::toString):
        (KJS::Bindings::JSObject::finalize):
        (KJS::Bindings::JSObject::createNative):
        (KJS::Bindings::JSObject::convertValueToJObject):
        (KJS::Bindings::JSObject::convertJObjectToValue):
        (KJS::Bindings::JSObject::listFromJArray):
        * bindings/jni_jsobject.h:
        * bindings/runtime.cpp:
        * bindings/runtime.h:
        * bindings/runtime_method.cpp:
        * bindings/runtime_method.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5828 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 files changed:
JavaScriptCore/ChangeLog
JavaScriptCore/bindings/jni/jni_class.cpp
JavaScriptCore/bindings/jni/jni_class.h
JavaScriptCore/bindings/jni/jni_instance.cpp
JavaScriptCore/bindings/jni/jni_instance.h
JavaScriptCore/bindings/jni/jni_runtime.cpp
JavaScriptCore/bindings/jni/jni_runtime.h
JavaScriptCore/bindings/jni/jni_utility.cpp
JavaScriptCore/bindings/jni/jni_utility.h
JavaScriptCore/bindings/jni_jsobject.cpp
JavaScriptCore/bindings/jni_jsobject.h
JavaScriptCore/bindings/runtime.cpp
JavaScriptCore/bindings/runtime.h
JavaScriptCore/bindings/runtime_method.cpp
JavaScriptCore/bindings/runtime_method.h

index c63e5b5eeb3c231d61e1ace6a6f6ec1147248ab6..eac9b7b194fab089eb9629b50fce1be8a054679f 100644 (file)
@@ -1,3 +1,97 @@
+2003-12-17  Richard Williamson   <rjw@apple.com>
+
+       Ensure that all the symbols we export are in the KJS
+       namespace (3512245).
+
+       Also renamed JavaString.characters() to JavaString.UTF8String()
+       for enhanced clarity.
+
+       Added some sanity checking to constructor of JObjectWrapper.
+
+        Reviewed by Dave.
+
+        * ChangeLog:
+        * bindings/jni/jni_class.cpp:
+        * bindings/jni/jni_class.h:
+        * bindings/jni/jni_instance.cpp:
+        (JavaInstance::invokeMethod):
+        (JObjectWrapper::JObjectWrapper):
+        * bindings/jni/jni_instance.h:
+        * bindings/jni/jni_runtime.cpp:
+        (JavaParameter::JavaParameter):
+        (JavaField::JavaField):
+        (JavaMethod::JavaMethod):
+        (JavaMethod::signature):
+        * bindings/jni/jni_runtime.h:
+        (KJS::Bindings::JavaString::ascii):
+        (KJS::Bindings::JavaString::UTF8String):
+        (KJS::Bindings::JavaString::JavaString):
+        (KJS::Bindings::JavaString::_commonInit):
+        (KJS::Bindings::JavaString::uchars):
+        (KJS::Bindings::JavaString::length):
+        (KJS::Bindings::JavaString::ustring):
+        (KJS::Bindings::JavaParameter::type):
+        (KJS::Bindings::JavaField::name):
+        (KJS::Bindings::JavaField::type):
+        (KJS::Bindings::JavaMethod::name):
+        (KJS::Bindings::JavaMethod::returnType):
+        * bindings/jni/jni_utility.cpp:
+        (KJS::Bindings::getJavaVM):
+        (KJS::Bindings::getJNIEnv):
+        (KJS::Bindings::callJNIVoidMethod):
+        (KJS::Bindings::callJNIObjectMethod):
+        (KJS::Bindings::callJNIBooleanMethod):
+        (KJS::Bindings::callJNIByteMethod):
+        (KJS::Bindings::callJNICharMethod):
+        (KJS::Bindings::callJNIShortMethod):
+        (KJS::Bindings::callJNIIntMethod):
+        (KJS::Bindings::callJNILongMethod):
+        (KJS::Bindings::callJNIFloatMethod):
+        (KJS::Bindings::callJNIDoubleMethod):
+        (KJS::Bindings::callJNIVoidMethodA):
+        (KJS::Bindings::callJNIObjectMethodA):
+        (KJS::Bindings::callJNIByteMethodA):
+        (KJS::Bindings::callJNICharMethodA):
+        (KJS::Bindings::callJNIShortMethodA):
+        (KJS::Bindings::callJNIIntMethodA):
+        (KJS::Bindings::callJNILongMethodA):
+        (KJS::Bindings::callJNIFloatMethodA):
+        (KJS::Bindings::callJNIDoubleMethodA):
+        (KJS::Bindings::callJNIBooleanMethodA):
+        (KJS::Bindings::getCharactersFromJString):
+        (KJS::Bindings::releaseCharactersForJString):
+        (KJS::Bindings::getCharactersFromJStringInEnv):
+        (KJS::Bindings::releaseCharactersForJStringInEnv):
+        (KJS::Bindings::getUCharactersFromJStringInEnv):
+        (KJS::Bindings::releaseUCharactersForJStringInEnv):
+        (KJS::Bindings::JNITypeFromClassName):
+        (KJS::Bindings::signatureFromPrimitiveType):
+        (KJS::Bindings::JNITypeFromPrimitiveType):
+        (KJS::Bindings::getJNIField):
+        (KJS::Bindings::convertValueToJValue):
+        * bindings/jni/jni_utility.h:
+        * bindings/jni_jsobject.cpp:
+        (KJS::Bindings::JSObject::invoke):
+        (KJS::Bindings::JSObject::JSObject):
+        (KJS::Bindings::JSObject::call):
+        (KJS::Bindings::JSObject::eval):
+        (KJS::Bindings::JSObject::getMember):
+        (KJS::Bindings::JSObject::setMember):
+        (KJS::Bindings::JSObject::removeMember):
+        (KJS::Bindings::JSObject::getSlot):
+        (KJS::Bindings::JSObject::setSlot):
+        (KJS::Bindings::JSObject::toString):
+        (KJS::Bindings::JSObject::finalize):
+        (KJS::Bindings::JSObject::createNative):
+        (KJS::Bindings::JSObject::convertValueToJObject):
+        (KJS::Bindings::JSObject::convertJObjectToValue):
+        (KJS::Bindings::JSObject::listFromJArray):
+        * bindings/jni_jsobject.h:
+        * bindings/runtime.cpp:
+        * bindings/runtime.h:
+        * bindings/runtime_method.cpp:
+        * bindings/runtime_method.h:
+
 === Safari-118 ===
 
 2003-12-16  Richard Williamson   <rjw@apple.com>
index 34446c234459b4a08b2dc622f9cfcca9a052e8ef..b5b64130af9ab8f8d38075d6580e8d48848cf5a4 100644 (file)
@@ -27,7 +27,7 @@
 #include <jni_utility.h>
 #include <jni_runtime.h>
 
-using namespace Bindings;
+using namespace KJS::Bindings;
 
 void JavaClass::_commonInit (jobject aClass)
 {
index 1c5147ffbd56ac0a5cb49d4c2d84644926b58842..fcc879f30b573c6fd320a63ba072abb064481380 100644 (file)
@@ -34,8 +34,9 @@
 
 #include <runtime.h>
 
-namespace Bindings {
+namespace KJS {
 
+namespace Bindings {
 
 class JavaClass : public Class
 {
@@ -122,5 +123,8 @@ private:
     long _numConstructors;
 };
 
-}
+} // namespace Bindings
+
+} // namespace KJS
+
 #endif
\ No newline at end of file
index 47cc4d622efdb6a866a34c3b764d6bd55954414b..fb52d5c19c8ded445ec8ebf62782e7b9bb6f87ab 100644 (file)
 #include <jni_utility.h>
 #include <runtime_object.h>
 
-using namespace Bindings;
+#ifdef NDEBUG
+#define JS_LOG(formatAndArgs...) ((void)0)
+#else
+#define JS_LOG(formatAndArgs...) { \
+    fprintf (stderr, "%s:  ", __PRETTY_FUNCTION__); \
+    fprintf(stderr, formatAndArgs); \
+}
+#endif
+
+using namespace KJS::Bindings;
 using namespace KJS;
 
 JavaInstance::JavaInstance (jobject instance) 
@@ -84,6 +93,8 @@ Value JavaInstance::invokeMethod (KJS::ExecState *exec, const Method *method, co
     jvalue *jArgs;
     Value resultValue;
     
+    JS_LOG ("%s\n", method->name());
+    
     if (count > 0) {
         jArgs = (jvalue *)malloc (count * sizeof(jvalue));
     }
@@ -105,7 +116,12 @@ Value JavaInstance::invokeMethod (KJS::ExecState *exec, const Method *method, co
         
         case object_type: {
             result.l = callJNIObjectMethodA (_instance->_instance, method->name(), jMethod->signature(), jArgs);
-            resultValue = Object(new RuntimeObjectImp(new JavaInstance (result.l)));
+            if (result.l != 0) {
+                resultValue = Object(new RuntimeObjectImp(new JavaInstance (result.l)));
+            }
+            else {
+                resultValue = Undefined();
+            }
         }
         break;
         
@@ -204,11 +220,13 @@ KJS::Value JavaInstance::valueOf() const
 
 JObjectWrapper::JObjectWrapper(jobject instance)
 {
+    assert (instance != 0);
+
     _ref = 1;
     // Cache the JNIEnv used to get the global ref for this java instanace.
     // It'll be used to delete the reference.
     _env = getJNIEnv();
-    
+        
     _instance = _env->NewGlobalRef (instance);
     _env->DeleteLocalRef (instance);
     
index bde364cbcb88d758d88303b268911c7e97793c2f..8108a63a4a893738fd0360912c165d674c47375d 100644 (file)
@@ -31,6 +31,8 @@
 
 #include <JavaScriptCore/runtime.h>
 
+namespace KJS {
+
 namespace Bindings {
 
 class JavaClass;
@@ -99,6 +101,8 @@ private:
     JObjectWrapper *_instance;
 };
 
-}
+} // namespace Bindings
+
+} // namespace KJS
 
 #endif
index 74e27b10a41319f393e879dbad52c354afa44150..a8a52bd804aedc6c0b60fdd0ea87e21a3ce3338f 100644 (file)
 #include <runtime_object.h>
 
 using namespace KJS;
-using namespace Bindings;
+using namespace KJS::Bindings;
 
 
 JavaParameter::JavaParameter (JNIEnv *env, jstring type)
 {
     _type = JavaString (env, type);
-    _JNIType = JNITypeFromClassName (_type.characters());
+    _JNIType = JNITypeFromClassName (_type.UTF8String());
 };
 
 JavaField::JavaField (JNIEnv *env, jobject aField)
@@ -48,7 +48,7 @@ JavaField::JavaField (JNIEnv *env, jobject aField)
     jobject fieldType = callJNIObjectMethod (aField, "getType", "()Ljava/lang/Class;");
     jstring fieldTypeName = (jstring)callJNIObjectMethod (fieldType, "getName", "()Ljava/lang/String;");
     _type = JavaString(env, fieldTypeName);
-    _JNIType = JNITypeFromClassName (_type.characters());
+    _JNIType = JNITypeFromClassName (_type.UTF8String());
 
     // Get field name
     jstring fieldName = (jstring)callJNIObjectMethod (aField, "getName", "()Ljava/lang/String;");
@@ -192,7 +192,7 @@ JavaMethod::JavaMethod (JNIEnv *env, jobject aMethod)
     jobject returnType = callJNIObjectMethod (aMethod, "getReturnType", "()Ljava/lang/Class;");
     jstring returnTypeName = (jstring)callJNIObjectMethod (returnType, "getName", "()Ljava/lang/String;");
     _returnType =JavaString (env, returnTypeName);
-    _JNIReturnType = JNITypeFromClassName (_returnType.characters());
+    _JNIReturnType = JNITypeFromClassName (_returnType.UTF8String());
 
     // Get method name
     jstring methodName = (jstring)callJNIObjectMethod (aMethod, "getName", "()Ljava/lang/String;");
@@ -252,7 +252,7 @@ const char *JavaMethod::signature() const
         
         _signature->append(signatureFromPrimitiveType (_JNIReturnType));
         if (_JNIReturnType == object_type) {
-            appendClassName (_signature, _returnType.characters());
+            appendClassName (_signature, _returnType.UTF8String());
             _signature->append(";");
         }
     }
index b6110b25a0a0d3442dfcb6ff6361c254d340fa11..a266f85fa8ed21ff9ac87602b9e446d029bab033 100644 (file)
@@ -35,7 +35,6 @@
 namespace KJS
 {
 class Value;
-}
 
 namespace Bindings
 {
@@ -48,7 +47,8 @@ public:
     void _commonInit (JNIEnv *e, jstring s)
     {
         // We could be more efficient:  only create
-        // _characters from _uchars on demand.
+        // _characters from _uchars on demand.  Maybe just
+        // use a UString?
         _size = e->GetStringLength (s);
         const char *c = getCharactersFromJStringInEnv (e, s);
         _characters = strdup(c);
@@ -101,7 +101,7 @@ public:
         return *this;
     }
 
-    const char *characters() const { return _characters; }
+    const char *UTF8String() const { return _characters; }
     const jchar *uchars() const { return _uchars; }
     int length() const { return _size; }
     KJS::UString ustring() const { return KJS::UString ((const KJS::UChar *)uchars(),length()); }
@@ -139,7 +139,7 @@ public:
         return *this;
     }
     
-    virtual RuntimeType type() const { return _type.characters(); }
+    virtual RuntimeType type() const { return _type.UTF8String(); }
 
     JNIType getJNIType() const { return _JNIType; }
     
@@ -224,8 +224,8 @@ public:
     virtual KJS::Value valueFromInstance(const Instance *instance) const;
     virtual void setValueToInstance(KJS::ExecState *exec, const Instance *instance, const KJS::Value &aValue) const;
     
-    virtual const char *name() const { return _name.characters(); }
-    virtual RuntimeType type() const { return _type.characters(); }
+    virtual const char *name() const { return _name.UTF8String(); }
+    virtual RuntimeType type() const { return _type.UTF8String(); }
 
     JNIType getJNIType() const { return _JNIType; }
     
@@ -282,8 +282,8 @@ public:
     };
 
     virtual KJS::Value value() const { return KJS::Value(0); }
-    virtual const char *name() const { return _name.characters(); };
-    virtual RuntimeType returnType() const { return _returnType.characters(); };
+    virtual const char *name() const { return _name.UTF8String(); };
+    virtual RuntimeType returnType() const { return _returnType.UTF8String(); };
     virtual Parameter *parameterAt(long i) const { return &_parameters[i]; };
     virtual long numParameters() const { return _numParameters; };
     
@@ -335,6 +335,8 @@ private:
     const char *_type;
 };
 
-}
+} // namespace Bindings
+
+} // namespace KJS
 
 #endif
index 328d8d567fc14bbf802ac664c9cf99f0887d6568..16a2b500b011311b9dd5a2d6e95d25bd03837bf2 100644 (file)
 #include "runtime_array.h"
 #include "runtime_object.h"
 
+using namespace KJS::Bindings;
+
 static JavaVM *jvm;
 
-JavaVM *getJavaVM()
+JavaVM *KJS::Bindings::getJavaVM()
 {
     if (jvm)
         return jvm;
@@ -53,7 +55,7 @@ JavaVM *getJavaVM()
     return jvm;
 }
 
-JNIEnv *getJNIEnv()
+JNIEnv *KJS::Bindings::getJNIEnv()
 {
     JNIEnv *env;
     jint jniError = 0;
@@ -202,135 +204,135 @@ static jvalue callJNIMethodA( JNIType type, jobject obj, const char *name, const
     \
     va_end (args);
 
-void callJNIVoidMethod (jobject obj, const char *name, const char *sig, ... )
+void KJS::Bindings::callJNIVoidMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (void_type, obj, name, sig);
 }
 
-jobject callJNIObjectMethod (jobject obj, const char *name, const char *sig, ... )
+jobject KJS::Bindings::callJNIObjectMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (object_type, obj, name, sig);
     return result.l;
 }
 
-jboolean callJNIBooleanMethod( jobject obj, const char *name, const char *sig, ... )
+jboolean KJS::Bindings::callJNIBooleanMethod( jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (boolean_type, obj, name, sig);
     return result.z;
 }
 
-jbyte callJNIByteMethod( jobject obj, const char *name, const char *sig, ... )
+jbyte KJS::Bindings::callJNIByteMethod( jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (byte_type, obj, name, sig);
     return result.b;
 }
 
-jchar callJNICharMethod (jobject obj, const char *name, const char *sig, ... )
+jchar KJS::Bindings::callJNICharMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (char_type, obj, name, sig);
     return result.c;
 }
 
-jshort callJNIShortMethod (jobject obj, const char *name, const char *sig, ... )
+jshort KJS::Bindings::callJNIShortMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (short_type, obj, name, sig);
     return result.s;
 }
 
-jint callJNIIntMethod (jobject obj, const char *name, const char *sig, ... )
+jint KJS::Bindings::callJNIIntMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (int_type, obj, name, sig);
     return result.i;
 }
 
-jlong callJNILongMethod (jobject obj, const char *name, const char *sig, ... )
+jlong KJS::Bindings::callJNILongMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (long_type, obj, name, sig);
     return result.j;
 }
 
-jfloat callJNIFloatMethod (jobject obj, const char *name, const char *sig, ... )
+jfloat KJS::Bindings::callJNIFloatMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (float_type, obj, name, sig);
     return result.f;
 }
 
-jdouble callJNIDoubleMethod (jobject obj, const char *name, const char *sig, ... )
+jdouble KJS::Bindings::callJNIDoubleMethod (jobject obj, const char *name, const char *sig, ... )
 {
     CALL_JNI_METHOD (double_type, obj, name, sig);
     return result.d;
 }
 
-void callJNIVoidMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+void KJS::Bindings::callJNIVoidMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (void_type, obj, name, sig, args);
 }
 
-jobject callJNIObjectMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jobject KJS::Bindings::callJNIObjectMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (object_type, obj, name, sig, args);
     return result.l;
 }
 
-jbyte callJNIByteMethodA ( jobject obj, const char *name, const char *sig, jvalue *args)
+jbyte KJS::Bindings::callJNIByteMethodA ( jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (byte_type, obj, name, sig, args);
     return result.b;
 }
 
-jchar callJNICharMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jchar KJS::Bindings::callJNICharMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (char_type, obj, name, sig, args);
     return result.c;
 }
 
-jshort callJNIShortMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jshort KJS::Bindings::callJNIShortMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (short_type, obj, name, sig, args);
     return result.s;
 }
 
-jint callJNIIntMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jint KJS::Bindings::callJNIIntMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (int_type, obj, name, sig, args);
     return result.i;
 }
 
-jlong callJNILongMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jlong KJS::Bindings::callJNILongMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (long_type, obj, name, sig, args);
     return result.j;
 }
 
-jfloat callJNIFloatMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jfloat KJS::Bindings::callJNIFloatMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA  (float_type, obj, name, sig, args);
     return result.f;
 }
 
-jdouble callJNIDoubleMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jdouble KJS::Bindings::callJNIDoubleMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (double_type, obj, name, sig, args);
     return result.d;
 }
 
-jboolean callJNIBooleanMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
+jboolean KJS::Bindings::callJNIBooleanMethodA (jobject obj, const char *name, const char *sig, jvalue *args)
 {
     jvalue result = callJNIMethodA (boolean_type, obj, name, sig, args);
     return result.z;
 }
 
-const char *getCharactersFromJString (jstring aJString)
+const char *KJS::Bindings::getCharactersFromJString (jstring aJString)
 {
     return getCharactersFromJStringInEnv (getJNIEnv(), aJString);
 }
 
-void releaseCharactersForJString (jstring aJString, const char *s)
+void KJS::Bindings::releaseCharactersForJString (jstring aJString, const char *s)
 {
     releaseCharactersForJStringInEnv (getJNIEnv(), aJString, s);
 }
 
-const char *getCharactersFromJStringInEnv (JNIEnv *env, jstring aJString)
+const char *KJS::Bindings::getCharactersFromJStringInEnv (JNIEnv *env, jstring aJString)
 {
     jboolean isCopy;
     const char *s = env->GetStringUTFChars((jstring)aJString, &isCopy);
@@ -341,12 +343,12 @@ const char *getCharactersFromJStringInEnv (JNIEnv *env, jstring aJString)
     return s;
 }
 
-void releaseCharactersForJStringInEnv (JNIEnv *env, jstring aJString, const char *s)
+void KJS::Bindings::releaseCharactersForJStringInEnv (JNIEnv *env, jstring aJString, const char *s)
 {
     env->ReleaseStringUTFChars (aJString, s);
 }
 
-const jchar *getUCharactersFromJStringInEnv (JNIEnv *env, jstring aJString)
+const jchar *KJS::Bindings::getUCharactersFromJStringInEnv (JNIEnv *env, jstring aJString)
 {
     jboolean isCopy;
     const jchar *s = env->GetStringChars((jstring)aJString, &isCopy);
@@ -357,12 +359,12 @@ const jchar *getUCharactersFromJStringInEnv (JNIEnv *env, jstring aJString)
     return s;
 }
 
-void releaseUCharactersForJStringInEnv (JNIEnv *env, jstring aJString, const jchar *s)
+void KJS::Bindings::releaseUCharactersForJStringInEnv (JNIEnv *env, jstring aJString, const jchar *s)
 {
     env->ReleaseStringChars (aJString, s);
 }
 
-JNIType JNITypeFromClassName(const char *name)
+JNIType KJS::Bindings::JNITypeFromClassName(const char *name)
 {
     JNIType type;
     
@@ -390,7 +392,7 @@ JNIType JNITypeFromClassName(const char *name)
     return type;
 }
 
-const char *signatureFromPrimitiveType(JNIType type)
+const char *KJS::Bindings::signatureFromPrimitiveType(JNIType type)
 {
     switch (type){
         case void_type: 
@@ -430,7 +432,7 @@ const char *signatureFromPrimitiveType(JNIType type)
     return "";
 }
 
-JNIType JNITypeFromPrimitiveType(char type)
+JNIType KJS::Bindings::JNITypeFromPrimitiveType(char type)
 {
     switch (type){
         case 'V': 
@@ -470,7 +472,7 @@ JNIType JNITypeFromPrimitiveType(char type)
     return invalid_type;
 }
 
-jvalue getJNIField( jobject obj, JNIType type, const char *name, const char *signature)
+jvalue KJS::Bindings::getJNIField( jobject obj, JNIType type, const char *name, const char *signature)
 {
     JavaVM *jvm = getJavaVM();
     JNIEnv *env = getJNIEnv();
@@ -530,7 +532,7 @@ jvalue getJNIField( jobject obj, JNIType type, const char *name, const char *sig
     return result;
 }
 
-jvalue convertValueToJValue (KJS::ExecState *exec, KJS::Value value, JNIType _JNIType, const char *javaClassName)
+jvalue KJS::Bindings::convertValueToJValue (KJS::ExecState *exec, KJS::Value value, JNIType _JNIType, const char *javaClassName)
 {
     jvalue result;
     double d = 0;
@@ -545,12 +547,12 @@ jvalue convertValueToJValue (KJS::ExecState *exec, KJS::Value value, JNIType _JN
                 KJS::ObjectImp *objectImp = static_cast<KJS::ObjectImp*>(value.imp());
                 if (strcmp(objectImp->classInfo()->className, "RuntimeObject") == 0) {
                     KJS::RuntimeObjectImp *imp = static_cast<KJS::RuntimeObjectImp *>(value.imp());
-                    Bindings::JavaInstance *instance = static_cast<Bindings::JavaInstance*>(imp->getInternalInstance());
+                    JavaInstance *instance = static_cast<JavaInstance*>(imp->getInternalInstance());
                     result.l = instance->javaInstance();
                 }
                 else if (strcmp(objectImp->classInfo()->className, "RuntimeArray") == 0) {
                     KJS::RuntimeArrayImp *imp = static_cast<KJS::RuntimeArrayImp *>(value.imp());
-                    Bindings::JavaArray *array = static_cast<Bindings::JavaArray*>(imp->getConcreteArray());
+                    JavaArray *array = static_cast<JavaArray*>(imp->getConcreteArray());
                     result.l = array->javaArray();
                 }
             }
index 1062bccac10f63ec00134af1de91838d5aa7a6ce..8dd0947492afcc4b3f9cb3e35d7d3b56e20ded8c 100644 (file)
@@ -44,10 +44,12 @@ typedef enum {
     double_type
 } JNIType;
 
+namespace KJS
+{
+
 namespace Bindings 
 {
 class JavaParameter;
-}
 
 const char *getCharactersFromJString (jstring aJString);
 void releaseCharactersForJString (jstring aJString, const char *s);
@@ -90,4 +92,8 @@ jdouble callJNIDoubleMethodA( jobject obj, const char *name, const char *sig, jv
 JavaVM *getJavaVM();
 JNIEnv *getJNIEnv();
 
+} // namespace Bindings
+
+} // namespace KJS
+
 #endif
\ No newline at end of file
index b05fb9097274abea331be8ad312400564bf65852..e906f5582dcbc1b0b1433a8a0a3ad98a64ec06b9 100644 (file)
@@ -35,7 +35,7 @@
 #include <jni_utility.h>
 #include <runtime_object.h>
 
-using namespace Bindings;
+using namespace KJS::Bindings;
 using namespace KJS;
 
 #ifdef NDEBUG
@@ -179,9 +179,6 @@ static void removeJavaReference (ObjectImp *imp)
     }
 }
 
-namespace Bindings
-{
-
 // May only be set by dispatchToJavaScriptThread().
 static CFRunLoopSourceRef completionSource;
 
@@ -246,7 +243,6 @@ static inline void unlockJavaScriptAccess()
     pthread_mutex_unlock(&javaScriptAccessLock);
 }
 
-typedef struct JSObjectCallContext JSObjectCallContext;
 
 static void dispatchToJavaScriptThread(JSObjectCallContext *context)
 {
@@ -422,7 +418,7 @@ JSObject::JSObject(jlong nativeJSObject)
 
 jobject JSObject::call(jstring methodName, jobjectArray args) const
 {
-    JS_LOG ("methodName = %s\n", JavaString(methodName).characters());
+    JS_LOG ("methodName = %s\n", JavaString(methodName).UTF8String());
 
     // Lookup the function object.
     ExecState *exec = _root->interpreter()->globalExec();
@@ -448,7 +444,7 @@ jobject JSObject::call(jstring methodName, jobjectArray args) const
 
 jobject JSObject::eval(jstring script) const
 {
-    JS_LOG ("script = %s\n", JavaString(script).characters());
+    JS_LOG ("script = %s\n", JavaString(script).UTF8String());
 
     Object thisObj = Object(const_cast<ObjectImp*>(_imp));
     Interpreter::lock();
@@ -459,7 +455,7 @@ jobject JSObject::eval(jstring script) const
 
 jobject JSObject::getMember(jstring memberName) const
 {
-    JS_LOG ("(%p) memberName = %s\n", _imp, JavaString(memberName).characters());
+    JS_LOG ("(%p) memberName = %s\n", _imp, JavaString(memberName).UTF8String());
 
     ExecState *exec = _root->interpreter()->globalExec();
 
@@ -472,7 +468,7 @@ jobject JSObject::getMember(jstring memberName) const
 
 void JSObject::setMember(jstring memberName, jobject value) const
 {
-    JS_LOG ("memberName = %s, value = %p\n", JavaString(memberName).characters(), value);
+    JS_LOG ("memberName = %s, value = %p\n", JavaString(memberName).UTF8String(), value);
     ExecState *exec = _root->interpreter()->globalExec();
     Interpreter::lock();
     _imp->put (exec, Identifier (JavaString(memberName).ustring()), convertJObjectToValue(value));
@@ -482,7 +478,7 @@ void JSObject::setMember(jstring memberName, jobject value) const
 
 void JSObject::removeMember(jstring memberName) const
 {
-    JS_LOG ("memberName = %s\n", JavaString(memberName).characters());
+    JS_LOG ("memberName = %s\n", JavaString(memberName).UTF8String());
 
     ExecState *exec = _root->interpreter()->globalExec();
     Interpreter::lock();
@@ -645,7 +641,7 @@ KJS::Value JSObject::convertJObjectToValue (jobject theObject) const
     // figure 22-4.
     jobject classOfInstance = callJNIObjectMethod(theObject, "getClass", "()Ljava/lang/Class;");
     jstring className = (jstring)callJNIObjectMethod(classOfInstance, "getName", "()Ljava/lang/String;");
-    if (strcmp(Bindings::JavaString(className).characters(), "netscape.javascript.JSObject") == 0) {
+    if (strcmp(Bindings::JavaString(className).UTF8String(), "netscape.javascript.JSObject") == 0) {
         // Pull the nativeJSObject value from the Java instance.  This is a
         // pointer to the ObjectImp.
         JNIEnv *env = getJNIEnv();
@@ -681,8 +677,6 @@ KJS::List JSObject::listFromJArray(jobjectArray jArray) const
     return aList;
 }
 
-}
-
 extern "C" {
 
 jlong KJS_JSCreateNativeJSObject (JNIEnv *env, jclass clazz, jstring jurl, jlong nativeHandle, jboolean ctx)
index 0cfc86e676f1619da64b474de60733c4b9541890..cce1261ee642fd06eafcf74b2f41c58c723765ee 100644 (file)
@@ -36,6 +36,8 @@
 #define jlong_to_impptr(a) (static_cast<KJS::ObjectImp*>(((void*)(uintptr_t)(a))))
 #define ptr_to_jlong(a) ((jlong)(uintptr_t)(a))
 
+namespace KJS {
+
 namespace Bindings {
 
 class RootObject;
@@ -106,6 +108,8 @@ struct JSObjectCallContext
     jvalue result;
 };
 
+typedef struct JSObjectCallContext JSObjectCallContext;
+
 class JSObject
 {
 public:
@@ -134,7 +138,9 @@ private:
 };
 
 
-}
+} // namespace Bindings
+
+} // namespace KJS
 
 extern "C" {
 
@@ -150,6 +156,6 @@ jobject KJS_JSObject_JSObjectGetSlot (JNIEnv *env, jclass jsClass, jlong nativeJ
 void KJS_JSObject_JSObjectSetSlot (JNIEnv *env, jclass jsClass, jlong nativeJSObject, jstring jurl, jint jindex, jobject value, jboolean ctx);
 jstring KJS_JSObject_JSObjectToString (JNIEnv *env, jclass clazz, jlong nativeJSObject);
 
-}
+} // namespace Bindings
 
 #endif
\ No newline at end of file
index 42b2f898aa563ba0693e1cb1d295b202eff85037..aa282f11c6d096c1eb9d61f6ea0fe638e08ea26c 100644 (file)
@@ -28,7 +28,7 @@
 #include <jni_instance.h>
 
 using namespace KJS;
-using namespace Bindings;
+using namespace KJS::Bindings;
 
 Instance *Instance::createBindingForLanguageInstance (BindingLanguage language, void *instance)
 {
index 4d0d4c502cbff5c529e54afbc0ea9dff61b64e7a..f4dfa346d7186f5a29fa20f7af7161240a35cf23 100644 (file)
@@ -28,6 +28,9 @@
 #include "list.h"
 #include "value.h"
 
+namespace KJS 
+{
+
 namespace Bindings
 {
 
@@ -129,6 +132,8 @@ public:
 
 const char *signatureForParameters(const KJS::List &aList);
 
-};
+} // namespace Bindings
+
+} // namespace KJS
 
 #endif
index eb132a612573bdb50f32cf87212fe35bd6452732..6a16dca20be1529429c0447ad0c77b75d2ff593e 100644 (file)
@@ -28,7 +28,7 @@
 #include "runtime_method.h"
 #include "runtime_object.h"
 
-using namespace Bindings;
+using namespace KJS::Bindings;
 using namespace KJS;
 
 RuntimeMethodImp::RuntimeMethodImp(ExecState *exec, const Identifier &ident, Bindings::Method *m) : FunctionImp (exec, ident)
index c3615adfe2cba441f3891be3ad7585941e2dc6a8..21c1116fb8a55e712184358cd74e2b63ef253732 100644 (file)
@@ -51,6 +51,6 @@ private:
     Bindings::Method *method;
 };
 
-};
+} // namespace KJS
 
 #endif
\ No newline at end of file