costin 2002/06/10 16:57:24 Modified: jk/native2/common jk_channel_jni.c Log: Remove the dispatch ( which remains to be used only for incoming AJP messages, until we finish merging the 2 mechanisms ). Invoke() will be used instead - that's the new mechanism, used to support all new jk components. Revision Changes Path 1.27 +24 -20 jakarta-tomcat-connectors/jk/native2/common/jk_channel_jni.c Index: jk_channel_jni.c =================================================================== RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_channel_jni.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- jk_channel_jni.c 10 Jun 2002 21:55:06 -0000 1.26 +++ jk_channel_jni.c 10 Jun 2002 23:57:24 -0000 1.27 @@ -503,22 +503,6 @@ return JK_OK; } -/** Called by java. Will take the rest of the message and dispatch again to the real target. - */ -static int JK_METHOD jk2_channel_jni_dispatch(jk_env_t *env, void *target, jk_endpoint_t *ep, jk_msg_t *msg) -{ - jk_bean_t *jniChB=(jk_bean_t *)target; - jk_channel_t *jniCh=(jk_channel_t *)jniChB->object; - int code; - - if( jniCh->mbean->debug > 0 ) - env->l->jkLog(env, env->l, JK_LOG_INFO,"channelJni.java2cInvoke() ok\n"); - - code = (int)msg->getByte(env, msg); - return ep->worker->workerEnv->dispatch( env, ep->worker->workerEnv, - ep->currentRequest, ep, code, ep->reply ); -} - static int JK_METHOD jk2_channel_jni_setProperty(jk_env_t *env, jk_bean_t *mbean, char *name, void *valueP) @@ -542,6 +526,29 @@ return JK_OK; } +/** Called by java. Will take the msg and dispatch it to workerEnv, as if it would + * be if received via socket + */ +int JK_METHOD jk2_channel_jni_invoke(jk_env_t *env, jk_bean_t *bean, jk_endpoint_t *ep, int code, + jk_msg_t *msg, int raw) +{ + jk_channel_t *ch=(jk_channel_t *)bean->object; + int rc=JK_OK; + + if( ch->mbean->debug > 0 ) + env->l->jkLog(env, env->l, JK_LOG_INFO, + "ch.%d() \n", code); + + code = (int)msg->getByte(env, msg); + + if( ch->mbean->debug > 0 ) + env->l->jkLog(env, env->l, JK_LOG_INFO,"channelJni.java2cInvoke() %d\n", code); + + return ep->worker->workerEnv->dispatch( env, ep->worker->workerEnv, + ep->currentRequest, ep, code, ep->reply ); +} + + int JK_METHOD jk2_channel_jni_factory(jk_env_t *env, jk_pool_t *pool, jk_bean_t *result, const char *type, const char *name) @@ -576,10 +583,7 @@ ch->workerEnv=wEnv; wEnv->addChannel( env, wEnv, ch ); - wEnv->registerHandler( env, wEnv, type, - "sendResponse", JK_HANDLE_JNI_DISPATCH, - jk2_channel_jni_dispatch, NULL ); - + result->invoke=jk2_channel_jni_invoke; return JK_OK; }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>