Ignore:
Timestamp:
May 7, 2019, 2:17:08 PM (5 years ago)
Author:
djay
Message:

Merge prototype-v0 branch in trunk

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/zoo-project/zoo-kernel/service_internal_java.c

    r790 r917  
    208208#endif
    209209#ifdef JAVA7
    210   cls_gr = (*env)NewGlobalRef(cls);
     210  cls_gr = (*env).NewGlobalRef(cls);
    211211#else
    212212  cls_gr = (*env)->NewGlobalRef(env, cls);
     
    215215  if (cls != NULL) {
    216216#ifdef JAVA7
    217 @    (*env).ExceptionClear();
     217    (*env).ExceptionClear();
    218218    pmid=(*env).GetStaticMethodID(cls, s->name, "(Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/HashMap;)I");
    219219#else
     
    284284  }
    285285#ifdef JAVA7
    286       (*jvm).DestroyJavaVM();
     286  (*jvm).DestroyJavaVM();
    287287#else
    288288  (*jvm)->DestroyJavaVM(jvm);
     
    427427#endif
    428428      map* sizeV=getMap(tmp1,"size");
     429      map* useFile=getMap(tmp1,"use_file");
     430      map* cacheFile=getMap(tmp1,"cache_file");
    429431      map* isArray=getMap(tmp1,"isArray");
    430432      map* alen=getMap(tmp1,"length");
     
    432434        if(strcmp(tmp1->name,"value")==0){
    433435          if(isArray==NULL){
    434             if(sizeV!=NULL && strcmp(tmp1->name,"value")==0){
     436            if(sizeV!=NULL && strcmp(tmp1->name,"value")==0 && useFile==NULL){
    435437#ifdef JAVA7
    436438              jbyteArray tmpData=(*env).NewByteArray(atoi(sizeV->value));
    437439              (*env).SetByteArrayRegion(tmpData,0,atoi(sizeV->value),(const jbyte *)tmp1->value);
    438               (*env).CallObjectMethod(env,scObject1, put_mid, (*env).NewStringUTF(env,tmp1->name), tmpData);
     440              (*env).CallObjectMethod(scObject1, put_mid, (*env).NewStringUTF(tmp1->name), tmpData);
    439441#else
    440442              jbyteArray tmpData=(*env)->NewByteArray(env,atoi(sizeV->value));
     
    448450              (*env)->CallObjectMethod(env,scObject1, put_mid, (*env)->NewStringUTF(env,tmp1->name), (*env)->NewStringUTF(env,tmp1->value));
    449451#endif
     452              if(useFile!=NULL)
     453#ifdef JAVA7
     454                (*env).CallObjectMethod(scObject1, put_mid, (*env).NewStringUTF("cache_file"), (*env).NewStringUTF(cacheFile->value));
     455#else
     456                (*env)->CallObjectMethod(env,scObject1, put_mid, (*env)->NewStringUTF(env,"cache_file"), (*env)->NewStringUTF(env,cacheFile->value));
     457#endif
     458             
    450459          }
    451460          else{
     
    455464            jclass scArrayListClass,scArrayList_class;
    456465            jmethodID scArrayList_constructor;
    457             jobject scObject2;
     466            jobject scObject2,scObject3;
    458467#ifdef JAVA7
    459468            scArrayListClass = (*env).FindClass("java/util/ArrayList");
     
    462471            jmethodID add_mid = 0;
    463472            scObject2 = (*env).NewObject(scArrayList_class, scArrayList_constructor);
     473            scObject3 = (*env).NewObject(scArrayList_class, scArrayList_constructor);
    464474
    465475            add_mid = (*env).GetMethodID(scArrayListClass,
     
    471481            jmethodID add_mid = 0;
    472482            scObject2 = (*env)->NewObject(env, scArrayList_class, scArrayList_constructor);
     483            scObject3 = (*env)->NewObject(env, scArrayList_class, scArrayList_constructor);
    473484
    474485            add_mid = (*env)->GetMethodID(env,scArrayListClass,
     
    478489           
    479490            for(i=0;i<alen1;i++){
     491              map* cMap=getMapArray(tmp->content,"cache_file",i);
     492              map* uMap=getMapArray(tmp->content,"use_file",i);
    480493              map* vMap=getMapArray(tmp->content,"value",i);
    481494              map* sMap=getMapArray(tmp->content,"size",i);
    482495              map* mMap=getMapArray(tmp->content,tmap->value,i);
    483496             
    484               if(sMap!=NULL && vMap!=NULL && strncmp(vMap->name,"value",5)==0){
     497              if(sMap!=NULL && vMap!=NULL && strncmp(vMap->name,"value",5)==0 && uMap==NULL){
    485498#ifdef JAVA7
    486499                jbyteArray tmpData=(*env).NewByteArray(atoi(sMap->value));
     
    501514#endif
    502515              }
    503              
     516
     517              if(cMap!=NULL){
     518#ifdef JAVA7
     519                jobject tmpData=(*env).NewStringUTF(cMap->value);
     520                (*env).CallObjectMethod(scObject3, add_mid, tmpData);
     521#else
     522                jobject tmpData=(*env)->NewStringUTF(env,cMap->value);
     523                (*env)->CallObjectMethod(env,scObject3, add_mid, tmpData);
     524#endif
     525
     526              }
    504527            }
    505528
    506529#ifdef JAVA7
    507530            (*env).CallObjectMethod(scObject1, put_mid, (*env).NewStringUTF(tmp1->name), scObject2);
     531            (*env).CallObjectMethod(scObject1, put_mid, (*env).NewStringUTF("cache_file"), scObject3);
    508532#else       
    509533            (*env)->CallObjectMethod(env,scObject1, put_mid, (*env)->NewStringUTF(env,tmp1->name), scObject2);
     534            (*env)->CallObjectMethod(env,scObject1, put_mid, (*env)->NewStringUTF(env,"cache_file"), scObject3);
    510535#endif
    511536
Note: See TracChangeset for help on using the changeset viewer.

Search

Context Navigation

ZOO Sponsors

http://www.zoo-project.org/trac/chrome/site/img/geolabs-logo.pnghttp://www.zoo-project.org/trac/chrome/site/img/neogeo-logo.png http://www.zoo-project.org/trac/chrome/site/img/apptech-logo.png http://www.zoo-project.org/trac/chrome/site/img/3liz-logo.png http://www.zoo-project.org/trac/chrome/site/img/gateway-logo.png

Become a sponsor !

Knowledge partners

http://www.zoo-project.org/trac/chrome/site/img/ocu-logo.png http://www.zoo-project.org/trac/chrome/site/img/gucas-logo.png http://www.zoo-project.org/trac/chrome/site/img/polimi-logo.png http://www.zoo-project.org/trac/chrome/site/img/fem-logo.png http://www.zoo-project.org/trac/chrome/site/img/supsi-logo.png http://www.zoo-project.org/trac/chrome/site/img/cumtb-logo.png

Become a knowledge partner

Related links

http://zoo-project.org/img/ogclogo.png http://zoo-project.org/img/osgeologo.png