Github user ajantha-bhat commented on a diff in the pull request:

    https://github.com/apache/carbondata/pull/2792#discussion_r228130454
  
    --- Diff: store/CSDK/src/CarbonReader.cpp ---
    @@ -79,21 +78,19 @@ jobject CarbonReader::build() {
         jmethodID buildID = jniEnv->GetMethodID(carbonReaderBuilderClass, 
"build",
             "()Lorg/apache/carbondata/sdk/file/CarbonReader;");
         carbonReaderObject = 
jniEnv->CallObjectMethod(carbonReaderBuilderObject, buildID);
    +    jclass carbonReader = jniEnv->GetObjectClass(carbonReaderObject);
    +    hasNextID = jniEnv->GetMethodID(carbonReader, "hasNext", "()Z");
    +    readNextRowID = jniEnv->GetMethodID(carbonReader, "readNextRow",
    +        "()Ljava/lang/Object;");
         return carbonReaderObject;
     }
     
     jboolean CarbonReader::hasNext() {
    -    jclass carbonReader = jniEnv->GetObjectClass(carbonReaderObject);
    -    jmethodID hasNextID = jniEnv->GetMethodID(carbonReader, "hasNext", 
"()Z");
    -    unsigned char hasNext = jniEnv->CallBooleanMethod(carbonReaderObject, 
hasNextID);
    -    return hasNext;
    +    return jniEnv->CallBooleanMethod(carbonReaderObject, hasNextID);
     }
     
    -jobjectArray CarbonReader::readNextRow() {
    -    jclass carbonReader = jniEnv->GetObjectClass(carbonReaderObject);
    -    jmethodID readNextRow2ID = jniEnv->GetMethodID(carbonReader, 
"readNextStringRow", "()[Ljava/lang/Object;");
    -    jobjectArray row = (jobjectArray) 
jniEnv->CallObjectMethod(carbonReaderObject, readNextRow2ID);
    -    return row;
    +jobject CarbonReader::readNextRow() {
    +    return (jobject) jniEnv->CallObjectMethod(carbonReaderObject, 
readNextRowID);
     }
     
     jboolean CarbonReader::close() {
    --- End diff --
    
    call CallObjectMethod() instead of boolean as return of close is always 
void(), update header also


---

Reply via email to