IPC_RETURN_TYPE IPC_subscribe (const char *msgName, HANDLER_TYPE handler, void *clientData) { char hndName[100]; ipcHandlerName(msgName, handler, hndName); return _IPC_subscribe(msgName, hndName, handler, clientData, FALSE); }
IPC_RETURN_TYPE IPC_subscribe (const char *msgName, HANDLER_TYPE handler, void *clientData) { char hndName[MAX_HND_NAME]; ipcHandlerName(msgName, handler, hndName, sizeof(hndName)); return _IPC_subscribe(msgName, hndName, handler, clientData, FALSE); }
JNIEXPORT jint JNICALL Java_ipc_java_IPC_IPC_1subscribe (JNIEnv *env, jclass theClass, jstring msgName, jstring handlerName, jint handlerNum) { const char *cmsgName, *chandlerName; int retVal; /* Set up information needed for the handler callbacks */ if (pJavaVM == NULL) (*env)->GetJavaVM(env, &pJavaVM); if (ipcClass == (jclass)NOT_YET_SET) ipcClass = (jclass)(*env)->NewGlobalRef(env, theClass); if (msgHandlerID == (jmethodID)NOT_YET_SET) msgHandlerID = (*env)->GetStaticMethodID(env, theClass, "msgCallbackHandler", MSG_CALLBACK_SIGNATURE); cmsgName = (*env)->GetStringUTFChars(env, msgName, 0); chandlerName = (*env)->GetStringUTFChars(env, handlerName, 0); retVal = _IPC_subscribe(cmsgName, (char *)chandlerName, ipcJavaMsgHandler, (void *)(size_t)handlerNum, 0); (*env)->ReleaseStringUTFChars(env, msgName, cmsgName); return retVal; }