assignments which require data type conversions.
}
JNIEXPORT void JNICALL Java_net_php_reflect_setException
- (JNIEnv *jenv, jclass self, jlong result, jstring value)
+ (JNIEnv *jenv, jclass self, jlong result, jbyteArray value)
{
pval *presult = (pval*)(long)result;
Java_net_php_reflect_setResultFromString(jenv, self, result, value);
private static native void setResultFromObject(long result, Object value);
private static native void setResultFromArray(long result);
private static native long nextElement(long array);
- private static native void setException(long result, String value);
+ private static native void setException(long result, byte value[]);
public static native void setEnv();
//
if (t!=null) e=t;
}
- setException(result, e.toString());
+ setException(result, e.toString().getBytes());
}
//
Method method;
if (args!=null && args.length>0) {
method=props[i].getWriteMethod();
+ args = coerce(method.getParameterTypes(), args);
} else {
method=props[i].getReadMethod();
}
for (int i=0; i<jfields.length; i++) {
if (jfields[i].getName().equalsIgnoreCase(prop)) {
if (args!=null && args.length>0) {
+ args = coerce(new Class[] {jfields[i].getType()}, args);
jfields[i].set(object, args[0]);
} else {
setResult(result, jfields[i].get(object));
}
JNIEXPORT void JNICALL Java_net_php_reflect_setException
- (JNIEnv *jenv, jclass self, jlong result, jstring value)
+ (JNIEnv *jenv, jclass self, jlong result, jbyteArray value)
{
pval *presult = (pval*)(long)result;
Java_net_php_reflect_setResultFromString(jenv, self, result, value);
private static native void setResultFromObject(long result, Object value);
private static native void setResultFromArray(long result);
private static native long nextElement(long array);
- private static native void setException(long result, String value);
+ private static native void setException(long result, byte value[]);
public static native void setEnv();
//
if (t!=null) e=t;
}
- setException(result, e.toString());
+ setException(result, e.toString().getBytes());
}
//
Method method;
if (args!=null && args.length>0) {
method=props[i].getWriteMethod();
+ args = coerce(method.getParameterTypes(), args);
} else {
method=props[i].getReadMethod();
}
for (int i=0; i<jfields.length; i++) {
if (jfields[i].getName().equalsIgnoreCase(prop)) {
if (args!=null && args.length>0) {
+ args = coerce(new Class[] {jfields[i].getType()}, args);
jfields[i].set(object, args[0]);
} else {
setResult(result, jfields[i].get(object));