Skip to main content
Jump to: navigation, search

API catalog

Revision as of 13:39, 24 May 2007 by (Talk | contribs) (Model Context Framework)


This page enumerates the catalog of API that will be released in JSF 1.0 (WTP 2.0). The API is broken into three categories: graduating, provisional and obsolete. Graduating API is framework that was considered provisional in previous releases and is now ready to graduate into full API status. Provisional (new) API is framework which has not been shipped in a release before and so has not had adopter soak time, but which is ready for wider adoption and refinement before being moved fully API. Obsolete API is framework that has been replaced by new framework or is being deprecated out of existence.

Graduating (Fully Public) API

The following lists the API that will graduate from provisional to full in Europa:

Design-Time Type Utilities

Plugin: org.eclipse.jst.jsf.common

Packages: org.eclipse.jst.jsf.common.util

Purpose: Provides utility classes for manipulating JDT IType's, primarily as Java Beans.

Model Context Framework

Plugin: org.eclipse.jst.jsf.common

Packages: org.eclipse.jst.jsf.common.context (all except context.symbols and internals)

Purpose: Provides a generic way to describe specific instance contexts within an arbitrary model and derive orthogonal information about that context through related resolvers (for example, your context is an absolute position in an XML file. What project are you in? What is your owning element).

Design-Time Application Framework

Plugin: org.eclipse.jst.jsf.core

Packages: org.eclipse.jst.jsf.core.designtime.*

Purpose: Simulates certain (currently mainly EL variable/property resolution) JSF runtime behaviours and provides extensibility for adopters to extend this simulation to places where they extend it at runtime (i.e. custom VariableResolver).

Content Model Type System

Plugin: org.eclipse.jst.jsf.core

Packages: org.eclipse.jst.jsf.core.metadataprocessors.*, org.eclipse.jst.jsf.core.taglibprocessing.*

Purpose: An entensible system for define expected types and valid value ranges on JSF tag attributes for use in end-user features like content assist and validation.

Application Configuration Resource File ("faces-config.xml") Model

Plugin: org.eclipse.jst.jsf.facesconfig

Packages: org.eclipse.jst.jsf.facesconfig.* (except org.eclipse.jst.jsf.facesconfig.internal.*)

Purpose: Provides programmatic access and manipulation of the standard JSF application configuration resource file (e.g. "faces-config.xml").

Application Configuration Manager

Plugin: org.eclipse.jst.jsf.core

Packages: org.eclipse.jst.jsf.core.jsfappconfig

Purpose: Aggregates all application configuration models that can be detected as being in the classpath at designtime to provide a unified view of how the a JSF project will be configured at runtime.

Provisional API

The following lists the API that will graduate from internal to provisional API in Europa:

EL Symbol Framework

Plugin: org.eclipse.jst.jsf.common

Packages: org.eclipse.jst.jsf.common.context

Purpose: Provides a framework through which to describe EL symbols (model objects, methods, functions, EL variables) at design time in order to analyze EL expression for such purposes as validation and content assist.

Designtime Meta-data Framework

Plugin: org.eclipse.jst.jsf.common

Packages: org.eclipse.jst.jsf.common.metadata.internal.provisional.*, org.eclipse.jst.jsf.common.metadata.traittypes.traittypes.internal.provisional.*

Purpose: Provides a rich, user-extensible repository for design-time metadata. Obsoletes: Meta-data framework for 0.5 as well as Sybase contributed metadata for pagedesigner.

Tag Identification

Plugins: org.eclipse.jst.jsf.common (possibly org.eclipse.jst.jsf.core)

Packages: org.eclipse.jst.jsf.common.dom (and possibly parts of org.eclipse.jst.jsf.core.internal.tld)

Purpose: TODO

Axiomatic Sets

Plugins: org.eclipse.jst.jsf.common, org.eclipse.jst.jsf.core

Packages: org.eclipse.jst.jsf.common.sets.internal.provisional.*, org.eclipse.jst.jsf.core.sets.internal.provisional.*

Purpose: Extends java.util.Set to provide sets of objects that support mathematically axiomatic operations like union and intersection as well as broader operations like mappings (functions) and constraints. JSF Core implements JSF tag specific sets and operations.

Tag Conversion Framework

Plugins: org.eclipse.jst.jsf.pagedesigner

Packages: org.eclipse.jst.jsf.pagedesigner.dtmanager (all internal.provisional sub-packages)

Purpose: Allows tag developers to contribute information to the Web Page Designer so that custom components can be rendered more faithfully on the design canvas.

Element Edit Framework

Plugins: org.eclipse.jst.jsf.pagedesigner

Packages: org.eclipse.jst.pagedesigner.elementedit (but not "html" and "jsp" sub-packages)

Purpose: Allows third-party tag contributors to add custom end-user behaviour (i.e. context menus) to Web Page Editor specific to their component's requires.

JSF Libraries

Plugins: org.eclipse.jst.jsf.core

Packages: org.eclipse.jst.jsf.core.jsflibraryregistry

Purpose: Allows the JSFDeveloper to define named sets of jars on the class and deploy paths. Also allows ToolsDeveloper and ComponentDeveloper to add plugin-contributed named sets of jars.

JSF Library Configuration

Plugins: org.eclipse.jst.jsf.core

Packages: org.eclipse.jst.jsf.core.jsflibraryconfiguration

Purpose: Allows the ToolsDeveloper to check for JSF Library references on a project.

Obsolete API

Content Model Annotations

Plugin: org.eclipse.jst.jsf.common

Packages: org.eclipse.jst.jsf.common.annotation.internal.provisional.*

Purpose: Provides content model annotation meta-data.

Migration: Use the new Meta-Data Framework.

Back to the top