Changeset 16349 for indexers/trunk/mgpp/jni/MGPPSearchWrapperImpl.cpp
- Timestamp:
- 2008-07-11T10:03:44+12:00 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
indexers/trunk/mgpp/jni/MGPPSearchWrapperImpl.cpp
r14910 r16349 1 1 /* 2 * MGPPSearchWrapperImpl.c 3 * Copyright (C) 200 2New Zealand Digital Library, http://www.nzdl.org2 * MGPPSearchWrapperImpl.cpp 3 * Copyright (C) 2007 New Zealand Digital Library, http://www.nzdl.org 4 4 * 5 5 * This program is free software; you can redistribute it and/or modify … … 32 32 #include <jni.h> 33 33 #include "org_greenstone_mgpp_MGPPSearchWrapper.h" 34 #include "MGPPWrapperImpl.h" 35 #include "TextGet.h" 34 #include "MGPPSearchWrapperImpl.h" 36 35 #include "GSDLQueryParser.h" 37 36 #include "MGQuery.h" 38 37 39 MGPP WrapperData::MGPPWrapperData() {38 MGPPSearchData::MGPPSearchData() { 40 39 indexData = new IndexData(); 41 40 queryInfo = new QueryInfo(); … … 63 62 } 64 63 65 MGPP WrapperData::~MGPPWrapperData() {64 MGPPSearchData::~MGPPSearchData() { 66 65 if (indexData !=NULL) { 67 66 delete indexData; … … 77 76 78 77 // cached ids for java stuff 79 jfieldID FID_mgpp_data = NULL; // MGPP WrapperData78 jfieldID FID_mgpp_data = NULL; // MGPPSearchData 80 79 jfieldID FID_query_result = NULL; // MGPPQueryResult 81 80 jmethodID MID_addDoc=NULL; // MGPPQueryResult.addDoc() … … 157 156 } 158 157 159 /* the java side MGPP Wrapper has a pointer to a C++ object - MGPPWrapperData158 /* the java side MGPPSearchWrapper has a pointer to a C++ object - MGPPSearchData 160 159 initialise this and set the pointer 161 160 */ … … 163 162 Java_org_greenstone_mgpp_MGPPSearchWrapper_initCppSide (JNIEnv *j_env, jobject j_obj){ 164 163 165 MGPP WrapperData * data = new MGPPWrapperData();164 MGPPSearchData * data = new MGPPSearchData(); 166 165 j_env->SetIntField(j_obj, FID_mgpp_data, (long)data); 167 166 … … 180 179 181 180 jint data_ptr = j_env->GetIntField(j_obj, FID_mgpp_data); 182 MGPP WrapperData * data = (MGPPWrapperData *)data_ptr;181 MGPPSearchData * data = (MGPPSearchData *)data_ptr; 183 182 184 183 #ifdef __WIN32__ … … 212 211 213 212 jint data_ptr = j_env->GetIntField(j_obj, FID_mgpp_data); 214 MGPP WrapperData * data = (MGPPWrapperData *)data_ptr;213 MGPPSearchData * data = (MGPPSearchData *)data_ptr; 215 214 216 215 data->indexData->UnloadData(); … … 235 234 236 235 // the query data 237 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);236 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 238 237 239 238 // the result to write to … … 246 245 // clear the result 247 246 j_env->CallVoidMethod(result_ptr, MID_clearResult); 248 exc = j_env->ExceptionOccurred(); // this catches t ehexception I think - it247 exc = j_env->ExceptionOccurred(); // this catches the exception I think - it 249 248 //wont be thrown any further 250 249 if (exc) { … … 262 261 // invalid syntax 263 262 j_env->CallVoidMethod(result_ptr, MID_setSyntaxError, true); 264 cerr << "MGPP WrapperImpl: invalid query syntax!!\n";263 cerr << "MGPPSearchWrapperImpl: invalid query syntax!!\n"; 265 264 return; 266 265 } … … 336 335 jobject j_obj, 337 336 jboolean j_on) { 338 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);337 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 339 338 if (j_on) { 340 339 data->defaultStemMethod |= 2; … … 349 348 jobject j_obj, 350 349 jboolean j_on) { 351 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);350 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 352 351 if (j_on) { 353 352 data->defaultStemMethod |= 4; … … 362 361 jobject j_obj, 363 362 jboolean j_on) { 364 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);363 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 365 364 366 365 if (j_on) { … … 375 374 jobject j_obj, 376 375 jint j_max) { 377 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);376 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 378 377 data->queryInfo->maxDocs=j_max; 379 378 } … … 383 382 jobject j_obj, 384 383 jint j_max) { 385 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);384 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 386 385 data->maxNumeric=j_max; 387 386 } … … 391 390 jobject j_obj, 392 391 jboolean j_on) { 393 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);392 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 394 393 395 394 data->queryInfo->sortByRank=j_on; … … 400 399 jobject j_obj, 401 400 jboolean j_on) { 402 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);401 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 403 402 data->queryInfo->needTermFreqs = j_on; 404 403 … … 410 409 jstring j_level){ 411 410 412 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);411 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 413 412 414 413 const char * level = j_env->GetStringUTFChars(j_level, NULL); … … 430 429 jstring j_level){ 431 430 432 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);431 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 433 432 434 433 const char * level = j_env->GetStringUTFChars(j_level, NULL); … … 451 450 jint j_mode){ 452 451 453 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);452 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 454 453 data->defaultBoolCombine=j_mode; 455 454 … … 460 459 jobject j_obj){ 461 460 462 MGPP WrapperData * data = (MGPPWrapperData *)j_env->GetIntField(j_obj, FID_mgpp_data);461 MGPPSearchData * data = (MGPPSearchData *)j_env->GetIntField(j_obj, FID_mgpp_data); 463 462 464 463 // print the data to a stringstream, then convert to char*, then to
Note:
See TracChangeset
for help on using the changeset viewer.