@ Override public void loadFromJSONObject ( JSONObject jobj , Database db ) throws JSONException { helpLoadFromJSONObject ( jobj , db ) ; JSONArray jarray = jobj . getJSONArray ( Members . AGGREGATE_COLUMNS . name ( ) ) ; int size = jarray . length ( ) ; for ( int i = 0 ; i < size ; i ++ ) { // We only expect one of these for now. assert ( i == 0 ) ; JSONObject tempObj = jarray . getJSONObject ( i ) ; m_aggregateTypes . add ( ExpressionType . get ( tempObj . getString ( Members . AGGREGATE_TYPE . name ( ) ) ) ) ; m_aggregateOutputColumns . add ( tempObj . getInt ( Members . AGGREGATE_OUTPUT_COLUMN . name ( ) ) ) ; m_aggregateExpressions . add ( AbstractExpression . loadFromJSONArrayChild ( null , tempObj , Members . AGGREGATE_EXPRESSIONS . name ( ) , null ) ) ; } m_partitionByExpressions = AbstractExpression . loadFromJSONArrayChild ( null , jobj , Members . PARTITIONBY_EXPRESSIONS . name ( ) , null ) ; m_orderByExpressions = new ArrayList <> ( ) ; AbstractExpression . loadSortListFromJSONArray ( m_orderByExpressions , null , jobj ) ; }
Deserialize a PartitionByPlanNode from JSON . Since we don t need the sort directions and we don t serialize them in toJSONString then we can t in general get them here .