Eclipse Platform
2.1

org.eclipse.update.core
Class FeatureContentProvider

java.lang.Object
  |
  +--org.eclipse.update.core.FeatureContentProvider
All Implemented Interfaces:
IFeatureContentProvider

public abstract class FeatureContentProvider
extends Object
implements IFeatureContentProvider

Base implementation of a feature content provider. This class provides a set of helper methods useful for implementing feature content providers. In particular, methods dealing with downloading and caching of feature files.

This class must be subclassed by clients.

Since:
2.0
See Also:
IFeatureContentProvider

Inner Class Summary
 class FeatureContentProvider.FileFilter
           
 
Field Summary
static String JAR_EXTENSION
           
 
Constructor Summary
FeatureContentProvider(URL base)
          Feature content provider constructor
 
Method Summary
 File asLocalFile(ContentReference ref, InstallMonitor monitor)
          Returns the specified reference as a local file.
 ContentReference asLocalReference(ContentReference ref, InstallMonitor monitor)
          Returns the specified reference as a local file system reference.
 long getDownloadSizeFor(IPluginEntry[] pluginEntries, INonPluginEntry[] nonPluginEntries)
          Returns the total size of all archives required for the specified plug-in and non-plug-in entries (the "packaging" view).
 IFeature getFeature()
          Returns the feature associated with this content provider.
 long getInstallSizeFor(IPluginEntry[] pluginEntries, INonPluginEntry[] nonPluginEntries)
          Returns the total size of all files required for the specified plug-in and non-plug-in entries (the "logical" view).
protected  String getPathID(INonPluginEntry entry)
          Returns the path identifer for a non plugin entry.
protected  String getPathID(IPluginEntry entry)
          Returns the path identifier for a plugin entry.
 URL getURL()
          Returns the feature url.
protected  File getWorkingDirectory()
          Returns working directory for this content provider
 void setFeature(IFeature feature)
          Sets the feature associated with this content provider.
protected  void validatePermissions(ContentReference[] references)
          Sets the permission of all the ContentReferences Check for the .permissions contentReference and use it to set the permissions of other ContentReference
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.update.core.IFeatureContentProvider
getArchiveReferences, getFeatureEntryArchiveReferences, getFeatureEntryContentReferences, getFeatureManifestReference, getNonPluginEntryArchiveReferences, getPluginEntryArchiveReferences, getPluginEntryContentReferences, getVerifier
 

Field Detail

JAR_EXTENSION

public static final String JAR_EXTENSION
Constructor Detail

FeatureContentProvider

public FeatureContentProvider(URL base)
Feature content provider constructor
Parameters:
base - feature URL. The interpretation of this URL is specific to each content provider.
Since:
2.0
Method Detail

getURL

public URL getURL()
Returns the feature url.
Specified by:
getURL in interface IFeatureContentProvider
See Also:
IFeatureContentProvider.getURL()

getFeature

public IFeature getFeature()
Returns the feature associated with this content provider.
Specified by:
getFeature in interface IFeatureContentProvider
See Also:
IFeatureContentProvider.getFeature()

setFeature

public void setFeature(IFeature feature)
Sets the feature associated with this content provider.
Specified by:
setFeature in interface IFeatureContentProvider
See Also:
IFeatureContentProvider.setFeature(IFeature)

asLocalReference

public ContentReference asLocalReference(ContentReference ref,
                                         InstallMonitor monitor)
                                  throws IOException,
                                         CoreException
Returns the specified reference as a local file system reference. If required, the file represented by the specified content reference is first downloaded to the local system
Parameters:
ref - content reference
monitor - progress monitor, can be null
Throws:
IOException -  
CoreException -  
Since:
2.0

asLocalFile

public File asLocalFile(ContentReference ref,
                        InstallMonitor monitor)
                 throws IOException,
                        CoreException
Returns the specified reference as a local file. If required, the file represented by the specified content reference is first downloaded to the local system
Parameters:
ref - content reference
monitor - progress monitor, can be null
Throws:
IOException -  
CoreException -  
Since:
2.0

getWorkingDirectory

protected File getWorkingDirectory()
                            throws IOException
Returns working directory for this content provider
Returns:
working directory
Throws:
IOException -  
Since:
2.0

getDownloadSizeFor

public long getDownloadSizeFor(IPluginEntry[] pluginEntries,
                               INonPluginEntry[] nonPluginEntries)
Returns the total size of all archives required for the specified plug-in and non-plug-in entries (the "packaging" view).
Specified by:
getDownloadSizeFor in interface IFeatureContentProvider
See Also:
IFeatureContentProvider.getDownloadSizeFor(IPluginEntry[], INonPluginEntry[])

getInstallSizeFor

public long getInstallSizeFor(IPluginEntry[] pluginEntries,
                              INonPluginEntry[] nonPluginEntries)
Returns the total size of all files required for the specified plug-in and non-plug-in entries (the "logical" view).
Specified by:
getInstallSizeFor in interface IFeatureContentProvider
See Also:
IFeatureContentProvider.getInstallSizeFor(IPluginEntry[], INonPluginEntry[])

getPathID

protected String getPathID(IPluginEntry entry)
Returns the path identifier for a plugin entry. plugins/<pluginId>_<pluginVersion>.jar
Returns:
the path identifier

getPathID

protected String getPathID(INonPluginEntry entry)
Returns the path identifer for a non plugin entry. features/<featureId>_<featureVersion>/<dataId>
Returns:
the path identifier

validatePermissions

protected void validatePermissions(ContentReference[] references)
Sets the permission of all the ContentReferences Check for the .permissions contentReference and use it to set the permissions of other ContentReference
Returns:
void

Eclipse Platform
2.1

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