Eclipse Platform
2.0

org.eclipse.update.core
Class ContentReference

java.lang.Object
  |
  +--org.eclipse.update.core.ContentReference
Direct Known Subclasses:
JarContentReference, JarEntryContentReference

public class ContentReference
extends Object

Content reference implements a general access wrapper to feature and site content. The reference specifies a "symbolic" path identifier for the content, and the actual reference as a file, or a URL.

This class may be instantiated or subclassed by clients.

Since:
2.0
See Also:
JarContentReference, JarEntryContentReference

Field Summary
static long UNKNOWN_SIZE
          Unknown size indication
 
Constructor Summary
ContentReference(String id, File file)
          Create content reference from file.
ContentReference(String id, URL url)
          Create content reference from URL.
 
Method Summary
 File asFile()
          Returns the content reference as a file.
 URL asURL()
          Returns the content reference as a URL.
 ContentReference createContentReference(String id, File file)
          A factory method to create a content reference of the same type.
 String getIdentifier()
          Retrieves the "symbolic" path identifier for the reference.
 long getInputSize()
          Returns the size of the referenced input, if it can be determined.
 InputStream getInputStream()
          Creates an input stream for the reference.
 boolean isLocalReference()
          Indicates whether the reference is a local file reference.
 String toString()
          Return string representation of this reference.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

UNKNOWN_SIZE

public static final long UNKNOWN_SIZE
Unknown size indication

Since:
2.0
See Also:
Constant Field Values
Constructor Detail

ContentReference

public ContentReference(String id,
                        URL url)
Create content reference from URL.

Parameters:
id - "symbolic" path identifier
url - actual referenced URL
Since:
2.0

ContentReference

public ContentReference(String id,
                        File file)
Create content reference from file.

Parameters:
id - "symbolic" path identifier
file - actual referenced file
Since:
2.0
Method Detail

createContentReference

public ContentReference createContentReference(String id,
                                               File file)
A factory method to create a content reference of the same type.

Parameters:
id - "symbolic" path identifier
file - actual referenced file
Returns:
content reference of the same type
Since:
2.0

getIdentifier

public String getIdentifier()
Retrieves the "symbolic" path identifier for the reference.

Returns:
"symbolic" path identifier
Since:
2.0

getInputStream

public InputStream getInputStream()
                           throws IOException
Creates an input stream for the reference.

Returns:
input stream
Throws:
IOException - unable to create stream
Since:
2.0

getInputSize

public long getInputSize()
                  throws IOException
Returns the size of the referenced input, if it can be determined.

Returns:
input size, or @see #UNKNOWN_SIZE if size cannot be determined.
IOException
Since:
2.0

isLocalReference

public boolean isLocalReference()
Indicates whether the reference is a local file reference.

Returns:
true if the reference is local, otherwise false
Since:
2.0

asFile

public File asFile()
            throws IOException
Returns the content reference as a file. Note, that this method does not cause the file to be downloaded if it is not already local.

Returns:
reference as file
Throws:
IOException - reference cannot be returned as file
Since:
2.0

asURL

public URL asURL()
          throws IOException
Returns the content reference as a URL.

Returns:
reference as URL
Throws:
IOException - reference cannot be returned as URL
Since:
2.0

toString

public String toString()
Return string representation of this reference.

Overrides:
toString in class Object
Returns:
string representation
Since:
2.0

Eclipse Platform
2.0

Copyright (c) IBM Corp. and others 2000, 2002. All Rights Reserved.