Properly implement setter and getter functions. Not part of default build.

git-svn-id: svn://10.0.0.236/trunk@162372 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
pedemont%us.ibm.com
2004-09-15 17:31:14 +00:00
parent ba9251db01
commit 409749d24b

View File

@@ -234,7 +234,11 @@ nsJavaXPTCStub::CallMethod(PRUint16 aMethodIndex,
const nsXPTMethodInfo *aMethodInfo,
nsXPTCMiniVariant *aParams)
{
LOG("nsJavaXPTCStub::CallMethod [%s]\n", aMethodInfo->GetName());
#ifdef DEBUG
const char* ifaceName;
mIInfo->GetNameShared(&ifaceName);
LOG("nsJavaXPTCStub::CallMethod [%s::%s]\n", ifaceName, aMethodInfo->GetName());
#endif
nsresult rv = NS_OK;
@@ -276,8 +280,18 @@ nsJavaXPTCStub::CallMethod(PRUint16 aMethodIndex,
// Get Java method to call
jmethodID mid = nsnull;
if (NS_SUCCEEDED(rv)) {
nsCAutoString methodName(aMethodInfo->GetName());
methodName.SetCharAt(tolower(methodName[0]), 0);
nsCAutoString methodName;
if (aMethodInfo->IsGetter() || aMethodInfo->IsSetter()) {
if (aMethodInfo->IsGetter())
methodName.Append("get");
else
methodName.Append("set");
methodName.Append(aMethodInfo->GetName());
methodName.SetCharAt(toupper(methodName[3]), 3);
} else {
methodName.Append(aMethodInfo->GetName());
methodName.SetCharAt(tolower(methodName[0]), 0);
}
jclass clazz = mJavaEnv->GetObjectClass(mJavaObject);
if (clazz)