@@ -902,18 +902,19 @@ def to_save_result(data: Any, format: Optional[str] = None, options: Optional[di
902902 options = options or {}
903903 if isinstance (data , SaveResult ):
904904 return data
905- elif isinstance (data , DriverDataCube ):
906- return ImageCollectionResult (data , format = format , options = options )
907- elif isinstance (data , DriverVectorCube ):
908- return VectorCubeResult (cube = data , format = format , options = options )
909905 elif isinstance (data , DelayedVector ):
910906 if format is None or format .lower () == "json" :
911907 # TODO #114 EP-3981 add vector cube support: keep features from feature collection
912908 geojsons = [mapping (geometry ) for geometry in data .geometries_wgs84 ]
913909 return JSONResult (geojsons , format = format , options = options )
914910 if format .lower () == "geojson" :
915911 return JSONResult (data .geojson , format = "geojson" , options = options )
916- raise ValueError (f"Unsupported format { format } for DelayedVector" )
912+ else :
913+ data = data .to_driver_vector_cube ()
914+ elif isinstance (data , DriverDataCube ):
915+ return ImageCollectionResult (data , format = format , options = options )
916+ elif isinstance (data , DriverVectorCube ):
917+ return VectorCubeResult (cube = data , format = format , options = options )
917918 elif isinstance (data , DriverMlModel ):
918919 return MlModelResult (ml_model = data )
919920 elif isinstance (data , np .ndarray ):
0 commit comments