@ Override public void loadFromJSONObject ( JSONObject jobj , Database db ) throws JSONException { super . loadFromJSONObject ( jobj , db ) ; m_lookupType = IndexLookupType . get ( jobj . getString ( Members . LOOKUP_TYPE . name ( ) ) ) ; m_sortDirection = SortDirectionType . get ( jobj . getString ( Members . SORT_DIRECTION . name ( ) ) ) ; if ( jobj . has ( Members . HAS_OFFSET_RANK . name ( ) ) ) { m_hasOffsetRankOptimization = jobj . getBoolean ( Members . HAS_OFFSET_RANK . name ( ) ) ; } m_purpose = jobj . has ( Members . PURPOSE . name ( ) ) ? jobj . getInt ( Members . PURPOSE . name ( ) ) : FOR_SCANNING_PERFORMANCE_OR_ORDERING ; m_targetIndexName = jobj . getString ( Members . TARGET_INDEX_NAME . name ( ) ) ; m_catalogIndex = db . getTables ( ) . get ( super . m_targetTableName ) . getIndexes ( ) . get ( m_targetIndexName ) ; // load end_expression m_endExpression = AbstractExpression . fromJSONChild ( jobj , Members . END_EXPRESSION . name ( ) , m_tableScan ) ; // load initial_expression m_initialExpression = AbstractExpression . fromJSONChild ( jobj , Members . INITIAL_EXPRESSION . name ( ) , m_tableScan ) ; // load searchkey_expressions AbstractExpression . loadFromJSONArrayChild ( m_searchkeyExpressions , jobj , Members . SEARCHKEY_EXPRESSIONS . name ( ) , m_tableScan ) ; // load COMPARE_NOTDISTINCT flag vector loadBooleanArrayFromJSONObject ( jobj , Members . COMPARE_NOTDISTINCT . name ( ) , m_compareNotDistinct ) ; // load skip_null_predicate m_skip_null_predicate = AbstractExpression . fromJSONChild ( jobj , Members . SKIP_NULL_PREDICATE . name ( ) , m_tableScan ) ; }
all members loaded