
org.opengis.cite.geotiff11.util.EPSGDataSet Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ets-geotiff11 Show documentation
Show all versions of ets-geotiff11 Show documentation
Describe purpose of test suite.
The newest version!
package org.opengis.cite.geotiff11.util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVRecord;
/*
* For referencing the path of an EPSG data set.
*/
/**
*
* EPSGDataSet class.
*
*
*/
public final class EPSGDataSet {
// UOM types
/** Constant METERS="9001"
*/
public static final String METERS = "9001";
/** Constant RADIANS="9101"
*/
public static final String RADIANS = "9101";
// path and extension
// public static final String DIRECTORY = System.getProperty("user.dir") +
// "/src/main/resources/epsg/";
// private static final String DIRECTORY =
// DirectoryUtil.getDirectory("/src/main/resources/epsg/");
// private static final String DIRECTORY = new
// File(EPSGDataSet.class.getResource("/epsg").getFile()).getAbsolutePath();
private static final String EXTENSION = ".csv";
// table paths
/** Constant UOM="unit-of-measure"
*/
public static final String UOM = "unit-of-measure";
/** Constant CRS="coordinate-reference-system"
*/
public static final String CRS = "coordinate-reference-system";
/** Constant DATUM="datum"
*/
public static final String DATUM = "datum";
/** Constant PRIMEMERIDIAN="prime-meridian"
*/
public static final String PRIMEMERIDIAN = "prime-meridian";
/** Constant ELLIPSOID="ellipsoid"
*/
public static final String ELLIPSOID = "ellipsoid";
/** Constant CO="coordinate-operation"
*/
public static final String CO = "coordinate-operation";
/** Constant COM="coordinate-operation-method"
*/
public static final String COM = "coordinate-operation-method";
/** Constant COP="coordinate-operation-parameter"
*/
public static final String COP = "coordinate-operation-parameter";
private static InputStreamReader getResourceISR(String name) {
return new InputStreamReader(EPSGDataSet.class.getResourceAsStream("/epsg/" + name + EXTENSION));
}
/**
*
* readTable.
*
* @param tableName a {@link java.lang.String} object
* @return a {@link java.io.BufferedReader} object
* @throws java.io.IOException if any.
*/
protected static BufferedReader readTable(String tableName) throws IOException {
return new BufferedReader(getResourceISR(tableName));
// return Files.newBufferedReader(Paths.get(DIRECTORY, tableName + EXTENSION),
// Charset.forName("Cp1252"));
}
/**
*
* getRecord.
*
* @param tableName a {@link java.lang.String} object
* @param column a {@link java.lang.String} object
* @param value a {@link java.lang.String} object
* @return a {@link org.apache.commons.csv.CSVRecord} object
* @throws java.io.IOException if any.
*/
public static CSVRecord getRecord(String tableName, String column, String value) throws IOException {
BufferedReader reader = readTable(tableName);
CSVParser csvParser = new CSVParser(reader, CSVFormat.DEFAULT.withFirstRecordAsHeader().withTrim());
for (CSVRecord csvRecord : csvParser) {
if (csvRecord.get(column).equals(value)) {
csvParser.close();
return csvRecord;
}
}
csvParser.close();
return null;
}
/**
*
* getItem.
*
* @param tableName a {@link java.lang.String} object
* @param column a {@link java.lang.String} object
* @param value a {@link java.lang.String} object
* @param returnColumn a {@link java.lang.String} object
* @return a {@link java.lang.String} object
* @throws java.io.IOException if any.
*/
public static String getItem(String tableName, String column, String value, String returnColumn)
throws IOException {
return getRecord(tableName, column, value).get(returnColumn);
}
/**
*
* getItem.
*
* @param tableName a {@link java.lang.String} object
* @param column a {@link java.lang.String} object
* @param value a int
* @param returnColumn a {@link java.lang.String} object
* @return a {@link java.lang.String} object
* @throws java.io.IOException if any.
*/
public static String getItem(String tableName, String column, int value, String returnColumn) throws IOException {
return getItem(tableName, column, Integer.toString(value), returnColumn);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy