Class SessionReader.ImportSupport

    • Constructor Detail

      • ImportSupport

        public ImportSupport​(String layerName,
                             int layerIndex,
                             List<SessionReader.LayerDependency> layerDependencies)
        Constructs a new ImportSupport.
        Parameters:
        layerName - layer name
        layerIndex - layer index
        layerDependencies - layer dependencies
    • Method Detail

      • addPostLayersTask

        public void addPostLayersTask​(Runnable task)
        Add a task, e.g. a message dialog, that should be executed in EDT after all layers have been added.
        Parameters:
        task - task to run in EDT
      • getInputStream

        public InputStream getInputStream​(String uriStr)
                                   throws IOException
        Return an InputStream for a URI from a .jos/.joz file. The following forms are supported: - absolute file (both .jos and .joz): "file:///home/user/data.osm" "file:/home/user/data.osm" "file:///C:/files/data.osm" "file:/C:/file/data.osm" "/home/user/data.osm" "C:\files\data.osm" (not a URI, but recognized by File constructor on Windows systems) - standalone .jos files: - relative uri: "save/data.osm" "../project2/data.osm" - for .joz files: - file inside zip archive: "layers/01/data.osm" - relative to the .joz file: "../save/data.osm" ("../" steps out of the archive)
        Parameters:
        uriStr - URI as string
        Returns:
        the InputStream
        Throws:
        IOException - Thrown when no Stream can be opened for the given URI, e.g. when the linked file has been deleted.
      • getFile

        public File getFile​(String uriStr)
                     throws IOException
        Return a File for a URI from a .jos/.joz file. Returns null if the URI points to a file inside the zip archive. In this case, inZipPath will be set to the corresponding path.
        Parameters:
        uriStr - the URI as string
        Returns:
        the resulting File
        Throws:
        IOException - if any I/O error occurs
      • isZip

        public boolean isZip()
        Determines if we are reading from a .joz file.
        Returns:
        true if we are reading from a .joz file, false otherwise
      • getLayerName

        public String getLayerName()
        Name of the layer that is currently imported.
        Returns:
        layer name
      • getLayerIndex

        public int getLayerIndex()
        Index of the layer that is currently imported.
        Returns:
        layer index