/* Copyright 2014 The jeo project. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.jeo.gdal;
import io.jeo.TestData;
import io.jeo.Tests;
import io.jeo.raster.RasterDataset;
import java.nio.file.Path;
/**
* Utility class exposing GDAL test datasets.
*/
public class GDALTestData {
/**
* Determines if GDAL is avaialble, any class using this test data should call this.
*/
public static boolean isAvailable() {
try {
GDAL.init();
return true;
}
catch(Throwable t) {
return false;
}
}
/**
* Returns the same dataset as described by {@link TestData#dem()}.
*/
public static RasterDataset dem() throws Exception {
Path dir = Tests.newTmpDir("gdal", "data");
Tests.unzip(GDALTestData.class.getResourceAsStream("dem.tif.zip"), dir);
return GeoTIFF.open(dir.resolve("dem.tif"));
}
/**
* Returns the same dataset as described by {@link TestData#rgb()}.
*/
public static RasterDataset rgb() throws Exception {
Path dir = Tests.newTmpDir("gdal", "data");
Tests.unzip(GDALTestData.class.getResourceAsStream("rgb.tif.zip"), dir);
return GeoTIFF.open(dir.resolve("rgb.tif"));
}
}