costin      02/05/03 10:41:52

  Modified:    jk/native2/common jk_msg_ajp.c
  Log:
  Add encoding/decoding for map.
  
  That'll be used very frequently to pass properties back and
  forth ( either via shm or a different channel )
  
  Revision  Changes    Path
  1.9       +26 -4     jakarta-tomcat-connectors/jk/native2/common/jk_msg_ajp.c
  
  Index: jk_msg_ajp.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_msg_ajp.c,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jk_msg_ajp.c      2 May 2002 03:13:05 -0000       1.8
  +++ jk_msg_ajp.c      3 May 2002 17:41:52 -0000       1.9
  @@ -60,7 +60,7 @@
    * Author:      Costin Manolache
    * Author:      Gal Shachor <[EMAIL PROTECTED]>                           *
    * Author:      Henri Gomez <[EMAIL PROTECTED]>                               *
  - * Version:     $Revision: 1.8 $                                           *
  + * Version:     $Revision: 1.9 $                                           *
    ***************************************************************************/
   
   #include "jk_pool.h"
  @@ -172,14 +172,36 @@
   static int jk2_msg_ajp_appendMap(jk_env_t *env, jk_msg_t *msg, 
                                    jk_map_t *map) 
   {
  +    int rc;
  +    int i;
  +    int size=map->size(env, map);
   
  -    return JK_OK;
  +    rc=msg->appendInt( env, msg, size );
  +    
  +    for( i=0; i< size; i++ ) {
  +        char *name=map->nameAt( env, map, i );
  +        char *val=map->valueAt( env, map, i );
  +        if( rc== JK_OK ) 
  +            rc=msg->appendString( env, msg, name );
  +        if( rc== JK_OK ) 
  +            msg->appendString( env, msg, val );
  +    }
  +    
  +    return rc;
   }
   
   static int jk2_msg_ajp_getMap(jk_env_t *env, jk_msg_t *msg, 
                                 jk_map_t *map) 
   {
  +    int size=msg->getInt( env, msg );
  +    int i;
  +    
  +    for( i=0; i<size; i++ ) {
  +        char *name= msg->getString( env, msg );
  +        char *val=msg->getString( env, msg );
   
  +        map->add( env, map, name, val );
  +    }
       return JK_OK;
   }
   
  @@ -189,8 +211,8 @@
   {
       int len;
   
  -    if(!param) {
  -         msg->appendInt( env, msg, 0xFFFF );
  +    if(param==NULL) {
  +        msg->appendInt( env, msg, 0xFFFF );
           return JK_OK; 
       }
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to