3333
3434OGRFeatherLayer::OGRFeatherLayer (
3535 OGRFeatherDataset *poDS, const char *pszLayerName,
36- std::shared_ptr<arrow::ipc::RecordBatchFileReader> &poRecordBatchFileReader)
37- : OGRArrowLayer(poDS, pszLayerName), m_poDS(poDS),
38- m_poRecordBatchFileReader(poRecordBatchFileReader)
36+ std::shared_ptr<arrow::ipc::RecordBatchFileReader> &poRecordBatchFileReader,
37+ CSLConstList papszOpenOptions)
38+ : OGRArrowLayer(poDS, pszLayerName,
39+ CPLTestBool (CSLFetchNameValueDef(
40+ papszOpenOptions, " LISTS_AS_STRING_JSON" , " NO" ))),
41+ m_poDS(poDS), m_poRecordBatchFileReader(poRecordBatchFileReader)
3942{
4043 EstablishFeatureDefn ();
4144 CPLAssert (static_cast <int >(m_aeGeomEncoding.size ()) ==
@@ -51,10 +54,13 @@ OGRFeatherLayer::OGRFeatherLayer(
5154 std::shared_ptr<arrow::io::RandomAccessFile> poFile, bool bSeekable,
5255 const arrow::ipc::IpcReadOptions &oOptions,
5356 std::shared_ptr<arrow::ipc::RecordBatchStreamReader>
54- &poRecordBatchStreamReader)
55- : OGRArrowLayer(poDS, pszLayerName), m_poDS(poDS),
56- m_poFile(std::move(poFile)), m_bSeekable(bSeekable), m_oOptions(oOptions),
57- m_poRecordBatchReader(poRecordBatchStreamReader)
57+ &poRecordBatchStreamReader,
58+ CSLConstList papszOpenOptions)
59+ : OGRArrowLayer(poDS, pszLayerName,
60+ CPLTestBool (CSLFetchNameValueDef(
61+ papszOpenOptions, " LISTS_AS_STRING_JSON" , " NO" ))),
62+ m_poDS(poDS), m_poFile(std::move(poFile)), m_bSeekable(bSeekable),
63+ m_oOptions(oOptions), m_poRecordBatchReader(poRecordBatchStreamReader)
5864{
5965 EstablishFeatureDefn ();
6066 CPLAssert (static_cast <int >(m_aeGeomEncoding.size ()) ==
0 commit comments