Eclipse Platform
Release 3.1

org.eclipse.update.core
Class BaseSiteFactory

java.lang.Object
  extended byorg.eclipse.update.core.model.SiteModelFactory
      extended byorg.eclipse.update.core.BaseSiteFactory
All Implemented Interfaces:
ISiteFactory

public abstract class BaseSiteFactory
extends SiteModelFactory
implements ISiteFactory

Base implementation of a site factory. The factory is responsible for constructing the correct concrete implementation of the model objects for each particular site type. This class creates model objects that correspond to the concrete implementation classes provided in this package. The actual site creation method is subclass responsibility.

This class must be subclassed by clients.

Note: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Since:
2.0
See Also:
ISiteFactory, SiteModelFactory

Constructor Summary
BaseSiteFactory()
           
 
Method Summary
 ArchiveReferenceModel createArchiveReferenceModel()
          Create a concrete implementation of archive reference model.
 SiteFeatureReferenceModel createFeatureReferenceModel()
          Create a concrete implementation of feature reference model.
abstract  ISite createSite(URL url)
          Create site.
 CategoryModel createSiteCategoryModel()
          Create a concrete implementation of category model.
 SiteModel createSiteMapModel()
          Create a concrete implementation of site model.
 URLEntryModel createURLEntryModel()
          Create a concrete implementation of annotated URL model.
protected  ResourceBundle getResourceBundle(URL url)
          Helper method to access resouce bundle for site.
protected  InputStream openStream(URL resolvedURL)
          Open a stream on a URL.
 
Methods inherited from class org.eclipse.update.core.model.SiteModelFactory
canParseSiteType, parseSite
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseSiteFactory

public BaseSiteFactory()
Method Detail

createSite

public abstract ISite createSite(URL url)
                          throws CoreException,
                                 InvalidSiteTypeException
Create site. Implementation of this method must be provided by subclass

Specified by:
createSite in interface ISiteFactory
Parameters:
url - URL interpreted by the site
Returns:
site object
Throws:
CoreException
InvalidSiteTypeException - the referenced site type is not a supported type for this factory
Since:
2.0
See Also:
ISiteFactory.createSite(URL)

getResourceBundle

protected ResourceBundle getResourceBundle(URL url)
Helper method to access resouce bundle for site. The default implementation attempts to load the appropriately localized site.properties file.

Parameters:
url - base URL used to load the resource bundle.
Returns:
resource bundle, or null.
Since:
2.0

createSiteMapModel

public SiteModel createSiteMapModel()
Create a concrete implementation of site model.

Overrides:
createSiteMapModel in class SiteModelFactory
Returns:
site model
Since:
2.0
See Also:
Site

createFeatureReferenceModel

public SiteFeatureReferenceModel createFeatureReferenceModel()
Create a concrete implementation of feature reference model.

Overrides:
createFeatureReferenceModel in class SiteModelFactory
Returns:
feature reference model
Since:
2.0
See Also:
FeatureReference

createArchiveReferenceModel

public ArchiveReferenceModel createArchiveReferenceModel()
Create a concrete implementation of archive reference model.

Overrides:
createArchiveReferenceModel in class SiteModelFactory
Returns:
archive reference model
Since:
2.0
See Also:
ArchiveReference

createURLEntryModel

public URLEntryModel createURLEntryModel()
Create a concrete implementation of annotated URL model.

Overrides:
createURLEntryModel in class SiteModelFactory
Returns:
annotated URL model
Since:
2.0
See Also:
URLEntry

createSiteCategoryModel

public CategoryModel createSiteCategoryModel()
Create a concrete implementation of category model.

Overrides:
createSiteCategoryModel in class SiteModelFactory
Returns:
category model
Since:
2.0
See Also:
Category

openStream

protected InputStream openStream(URL resolvedURL)
                          throws IOException
Open a stream on a URL. manages a time out if the connection is locked or fails

Parameters:
resolvedURL -
Returns:
InputStream
Throws:
IOException

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.