// This software is released into the Public Domain. See copying.txt for details. package org.openstreetmap.osmosis.dataset.v0_6.impl; import java.io.File; import org.openstreetmap.osmosis.core.lifecycle.Closeable; /** * Defines the operations required for a manager of dataset store files. * * @author Brett Henderson */ public interface DatasetStoreFileManager extends Closeable { /** * Returns the file to be used for storing node objects. * * @return The node object file. */ File getNodeObjectFile(); /** * Returns the file to be used for storing node object offsets against their * id. * * @return The node object offset index file. */ File getNodeObjectOffsetIndexFile(); /** * Returns the file to be used for storing node ids against tile ids. * * @return The node tile index file. */ File getNodeTileIndexFile(); /** * Returns the file to be used for storing way objects. * * @return The way object file. */ File getWayObjectFile(); /** * Returns the file to be used for storing way object offsets against their * id. * * @return The way object offset index file. */ File getWayObjectOffsetIndexFile(); /** * Returns the file to be used for storing way ids against tile ids. Because * multiple files are used for storing way tile indexes, the implementation * must support an arbitrary number of index files to be returned. * * @param instance * The index file number. * @return The way tile index file. */ File getWayTileIndexFile(int instance); /** * Returns the file to be used for storing relationships between nodes and * ways. * * @return The node way index file. */ File getNodeWayIndexFile(); /** * Returns the file to be used for storing relation objects. * * @return The relation object file. */ File getRelationObjectFile(); /** * Returns the file to be used for storing relation object offsets against * their id. * * @return The relation object offset index file. */ File getRelationObjectOffsetIndexFile(); /** * Returns the file to be used for storing relationships between nodes and * relations. * * @return The node relation index file. */ File getNodeRelationIndexFile(); /** * Returns the file to be used for storing relationships between ways and * relations. * * @return The way relation index file. */ File getWayRelationIndexFile(); /** * Returns the file to be used for storing relationships between relations * and relations. * * @return The relation relation index file. */ File getRelationRelationIndexFile(); }