@Override protected void loadFromJSONObject(JSONObject obj, Database db) throws JSONException { m_columnIndex = obj.getInt(Members.COLUMN_IDX.name()); m_tableName = obj.getString(Members.TABLE_NAME.name()); m_columnName = obj.getString(Members.COLUMN_NAME.name()); m_columnAlias = obj.getString(Members.COLUMN_ALIAS.name()); }
@Override public void toJSONString(JSONStringer stringer) throws JSONException { super.toJSONString(stringer); stringer.key(Members.COLUMN_IDX.name()).value(m_columnIndex); stringer.key(Members.TABLE_NAME.name()).value(m_tableName); stringer.key(Members.COLUMN_NAME.name()).value(m_columnName); stringer.key(Members.COLUMN_ALIAS.name()).value(m_columnAlias); }
@Override public void toJSONString(JSONStringer stringer) throws JSONException { super.toJSONString(stringer); stringer.key(Members.COLUMN_IDX.name()).value(m_columnIndex); stringer.key(Members.TABLE_NAME.name()).value(m_tableName); // Column name is not required in the EE but testing showed that it is // needed to support type resolution of indexed expressions in the planner // after they get round-tripped through the catalog's index definition. stringer.key(Members.COLUMN_NAME.name()).value(m_columnName); }