src/share/native/common/jni_util.h

Print this page




 261  * Convenience thread-related calls on the java.lang.Object class.
 262  */
 263 
 264 JNIEXPORT void JNICALL
 265 JNU_MonitorWait(JNIEnv *env, jobject object, jlong timeout);
 266 
 267 JNIEXPORT void JNICALL
 268 JNU_Notify(JNIEnv *env, jobject object);
 269 
 270 JNIEXPORT void JNICALL
 271 JNU_NotifyAll(JNIEnv *env, jobject object);
 272 
 273 
 274 /************************************************************************
 275  * Miscellaneous utilities used by the class libraries
 276  */
 277 
 278 #define IS_NULL(obj) ((obj) == NULL)
 279 #define JNU_IsNull(env,obj) ((obj) == NULL)
 280 
































 281 
 282 /************************************************************************
 283  * Debugging utilities
 284  */
 285 
 286 JNIEXPORT void JNICALL
 287 JNU_PrintString(JNIEnv *env, char *hdr, jstring string);
 288 
 289 JNIEXPORT void JNICALL
 290 JNU_PrintClass(JNIEnv *env, char *hdr, jobject object);
 291 
 292 JNIEXPORT jstring JNICALL
 293 JNU_ToString(JNIEnv *env, jobject object);
 294 
 295 /*
 296  * Package shorthand for use by native libraries
 297  */
 298 #define JNU_JAVAPKG         "java/lang/"
 299 #define JNU_JAVAIOPKG       "java/io/"
 300 #define JNU_JAVANETPKG      "java/net/"




 261  * Convenience thread-related calls on the java.lang.Object class.
 262  */
 263 
 264 JNIEXPORT void JNICALL
 265 JNU_MonitorWait(JNIEnv *env, jobject object, jlong timeout);
 266 
 267 JNIEXPORT void JNICALL
 268 JNU_Notify(JNIEnv *env, jobject object);
 269 
 270 JNIEXPORT void JNICALL
 271 JNU_NotifyAll(JNIEnv *env, jobject object);
 272 
 273 
 274 /************************************************************************
 275  * Miscellaneous utilities used by the class libraries
 276  */
 277 
 278 #define IS_NULL(obj) ((obj) == NULL)
 279 #define JNU_IsNull(env,obj) ((obj) == NULL)
 280 
 281 /************************************************************************
 282  * Miscellaneous utilities used by the class libraries to return from
 283  * a function if a value is NULL or an exception is pending.
 284  */
 285 
 286 #define CHECK_NULL(x)                           \
 287     do {                                        \
 288         if ((x) == NULL) {                      \
 289             return;                             \
 290         }                                       \
 291     } while (0)                                 \
 292 
 293 #define CHECK_NULL_RETURN(x, y)                 \
 294     do {                                        \
 295         if ((x) == NULL) {                      \
 296             return (y);                         \
 297         }                                       \
 298     } while (0)                                 \
 299 
 300 #define JNU_CHECK_EXCEPTION(env)                \
 301     do {                                        \
 302         if ((*env)->ExceptionCheck(env)) {      \
 303             return;                             \
 304         }                                       \
 305     } while (0)                                 \
 306 
 307 #define JNU_CHECK_EXCEPTION_RETURN(env, y)      \
 308     do {                                        \
 309         if ((*env)->ExceptionCheck(env)) {      \
 310             return (y);                         \
 311         }                                       \
 312     } while (0)
 313 
 314 /************************************************************************
 315  * Debugging utilities
 316  */
 317 
 318 JNIEXPORT void JNICALL
 319 JNU_PrintString(JNIEnv *env, char *hdr, jstring string);
 320 
 321 JNIEXPORT void JNICALL
 322 JNU_PrintClass(JNIEnv *env, char *hdr, jobject object);
 323 
 324 JNIEXPORT jstring JNICALL
 325 JNU_ToString(JNIEnv *env, jobject object);
 326 
 327 /*
 328  * Package shorthand for use by native libraries
 329  */
 330 #define JNU_JAVAPKG         "java/lang/"
 331 #define JNU_JAVAIOPKG       "java/io/"
 332 #define JNU_JAVANETPKG      "java/net/"