de.intarsys.tools.installresource
Class Install

java.lang.Object
  extended by de.intarsys.tools.installresource.Install
Direct Known Subclasses:
InstallFile, InstallFileList, InstallZip

public abstract class Install
extends java.lang.Object

Abstract superclass for implementing the resource installation behavior.


Field Summary
protected  java.lang.ClassLoader classLoader
           
protected  java.io.File[] files
           
protected  java.lang.String name
           
protected  java.lang.String path
           
 
Constructor Summary
Install(java.lang.String path, java.lang.String name, boolean platformDependent)
           
 
Method Summary
protected static void copy(java.net.URL url, java.io.File file)
           
protected static java.lang.String createPlatformFallbackId()
           
protected static java.lang.String createPlatformId()
           
 boolean delete()
          Delete the temporary installation.
protected static void deleteOnExit(java.io.File file)
          Make file and all descendents subject to delete.
protected  java.util.Enumeration<java.net.URL> find(java.lang.String name)
          Find all URL's to a specific resource.
 java.lang.ClassLoader getClassLoader()
           
 java.io.File getFile()
           
 java.io.File[] getFiles()
           
 java.lang.String getName()
           
 java.lang.String getPath()
           
static java.lang.String getPlatformDefaultId()
           
static java.lang.String getPlatformFallbackId()
           
static java.lang.String getPlatformId()
           
protected  java.lang.String getResourceNameDefault(java.lang.String name)
           
protected  java.lang.String getResourceNameFallback(java.lang.String name)
           
protected  java.lang.String getResourceNameFull(java.lang.String name)
           
protected  java.lang.String getResourceNamePlain(java.lang.String name)
           
 boolean isPlatformDependent()
           
 java.io.File load()
          Load the first occurrence of the designated target from the classloader.
 java.io.File[] loadAll()
          Load all occurrences of the designated target from the classloader.
protected abstract  java.io.File loadURL(java.net.URL url)
           
protected  java.util.Enumeration<java.net.URL> open(java.lang.String name)
           
protected  java.lang.String prefix(java.lang.String name)
           
 void setClassLoader(java.lang.ClassLoader classLoader)
           
static void setPlatformFallbackId(java.lang.String value)
           
static void setPlatformId(java.lang.String value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

name

protected final java.lang.String name

path

protected final java.lang.String path

files

protected java.io.File[] files

classLoader

protected java.lang.ClassLoader classLoader
Constructor Detail

Install

public Install(java.lang.String path,
               java.lang.String name,
               boolean platformDependent)
Method Detail

copy

protected static void copy(java.net.URL url,
                           java.io.File file)
                    throws java.io.IOException,
                           java.io.FileNotFoundException
Throws:
java.io.IOException
java.io.FileNotFoundException

createPlatformFallbackId

protected static java.lang.String createPlatformFallbackId()

createPlatformId

protected static java.lang.String createPlatformId()

deleteOnExit

protected static void deleteOnExit(java.io.File file)
Make file and all descendents subject to delete.

Parameters:
file -

getPlatformDefaultId

public static java.lang.String getPlatformDefaultId()

getPlatformFallbackId

public static java.lang.String getPlatformFallbackId()

getPlatformId

public static java.lang.String getPlatformId()

setPlatformFallbackId

public static void setPlatformFallbackId(java.lang.String value)

setPlatformId

public static void setPlatformId(java.lang.String value)

delete

public boolean delete()
Delete the temporary installation.

Returns:
true if all artifacts are deleted.

find

protected java.util.Enumeration<java.net.URL> find(java.lang.String name)
Find all URL's to a specific resource.

Parameters:
name -
Returns:

getClassLoader

public java.lang.ClassLoader getClassLoader()

getFile

public java.io.File getFile()

getFiles

public java.io.File[] getFiles()

getName

public java.lang.String getName()

getPath

public java.lang.String getPath()

getResourceNameDefault

protected java.lang.String getResourceNameDefault(java.lang.String name)

getResourceNameFallback

protected java.lang.String getResourceNameFallback(java.lang.String name)

getResourceNameFull

protected java.lang.String getResourceNameFull(java.lang.String name)

getResourceNamePlain

protected java.lang.String getResourceNamePlain(java.lang.String name)

isPlatformDependent

public boolean isPlatformDependent()

load

public java.io.File load()
                  throws java.io.IOException
Load the first occurrence of the designated target from the classloader.

Returns:
Load the first occurrence of the designated target from the classloader.
Throws:
java.io.IOException

loadAll

public java.io.File[] loadAll()
                       throws java.io.IOException
Load all occurrences of the designated target from the classloader.

Returns:
Load all occurrences of the designated target from the classloader.
Throws:
java.io.IOException

loadURL

protected abstract java.io.File loadURL(java.net.URL url)
                                 throws java.io.IOException
Throws:
java.io.IOException

open

protected java.util.Enumeration<java.net.URL> open(java.lang.String name)
                                            throws java.io.IOException
Throws:
java.io.IOException

prefix

protected java.lang.String prefix(java.lang.String name)

setClassLoader

public void setClassLoader(java.lang.ClassLoader classLoader)