File tree Expand file tree Collapse file tree 2 files changed +18
-3
lines changed
main/scala/org/locationtech/rasterframes/ref
test/scala/org/locationtech/rasterframes/ref Expand file tree Collapse file tree 2 files changed +18
-3
lines changed Original file line number Diff line number Diff line change @@ -129,13 +129,18 @@ object RasterSource extends LazyLogging {
129129 } else false
130130
131131 /** Extractor for determining if a scheme indicates GDAL preference. */
132- def unapply (source : URI ): Boolean =
133- gdalOnly(source) || ((preferGdal || source.getScheme.startsWith(" gdal" )) && GDALRasterSource .hasGDAL)
132+ def unapply (source : URI ): Boolean = {
133+ lazy val schemeIsGdal = Option (source.getScheme())
134+ .exists(_.startsWith(" gdal" ))
135+
136+ gdalOnly(source) || ((preferGdal || schemeIsGdal) && GDALRasterSource .hasGDAL)
137+ }
134138 }
135139
136140 object IsDefaultGeoTiff {
137141 def unapply (source : URI ): Boolean = source.getScheme match {
138- case " file" | " http" | " https" | " s3" | " " => true
142+ case " file" | " http" | " https" | " s3" => true
143+ case null | " " ⇒ true
139144 case _ => false
140145 }
141146 }
Original file line number Diff line number Diff line change @@ -109,6 +109,7 @@ class RasterSourceSpec extends TestEnvironment with TestData {
109109 it(" should interpret no scheme as file://" ){
110110 val localSrc = geotiffDir.resolve(" LC08_B7_Memphis_COG.tiff" ).toString()
111111 val schemelessUri = new URI (localSrc)
112+ schemelessUri.getScheme should be (null )
112113 val src = RasterSource (schemelessUri)
113114 assert(! src.extent.isEmpty)
114115 }
@@ -138,6 +139,15 @@ class RasterSourceSpec extends TestEnvironment with TestData {
138139
139140 gdal.bandCount should be (3 )
140141 }
142+
143+ it(" should interpret no scheme as file://" ) {
144+ val localSrc = geotiffDir.resolve(" LC08_B7_Memphis_COG.tiff" ).toString()
145+ val schemelessUri = new URI (localSrc)
146+ val gdal = GDALRasterSource (schemelessUri)
147+ val jvm = JVMGeoTiffRasterSource (schemelessUri)
148+ gdal.extent should be (jvm.extent)
149+ gdal.cellSize should be(jvm.cellSize)
150+ }
141151 }
142152 }
143153
You can’t perform that action at this time.
0 commit comments