62 lines
1.4 KiB
Java
62 lines
1.4 KiB
Java
/**
|
|
* Access to the storageconfig.txt config file
|
|
*
|
|
* @author ab
|
|
*/
|
|
package btools.mapaccess;
|
|
|
|
import java.io.BufferedReader;
|
|
import java.io.File;
|
|
import java.io.FileReader;
|
|
|
|
public class StorageConfigHelper
|
|
{
|
|
public static File getSecondarySegmentDir( String segmentDir )
|
|
{
|
|
return getStorageLocation( segmentDir, "secondary_segment_dir=" );
|
|
}
|
|
|
|
public static File getAdditionalMaptoolDir( String segmentDir )
|
|
{
|
|
return getStorageLocation( segmentDir, "additional_maptool_dir=" );
|
|
}
|
|
|
|
private static File getStorageLocation( String segmentDir, String tag )
|
|
{
|
|
File res = null;
|
|
BufferedReader br = null;
|
|
String configFile = segmentDir + "/storageconfig.txt";
|
|
try
|
|
{
|
|
br = new BufferedReader( new FileReader( configFile ) );
|
|
for ( ;; )
|
|
{
|
|
String line = br.readLine();
|
|
if ( line == null ) break;
|
|
line = line.trim();
|
|
if ( line.startsWith( "#" ) ) continue;
|
|
if ( line.startsWith( tag ) )
|
|
{
|
|
String path = line.substring( tag.length() ).trim();
|
|
res = path.startsWith( "/" ) ? new File( path ) : new File( new File( segmentDir ), path );
|
|
if ( !res.exists() ) res = null;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e) { /* ignore */ }
|
|
finally
|
|
{
|
|
if ( br != null )
|
|
{
|
|
try
|
|
{
|
|
br.close();
|
|
}
|
|
catch (Exception ee) { /* ignore */ }
|
|
}
|
|
}
|
|
return res;
|
|
}
|
|
|
|
}
|