Contextual Symbol Factory
Identifier:
org.eclipse.jst.jsf.common.contextSymbolFactory
Since:
1.5
Description:
The context symbol factory allows a symbol factory with a specific id to be registered to create symbols in a particular context. Clients wishing to delegate symbol construction in a particular context may then request the symbol factory based on its id.
To get a map of registered symbol factories keyed by id, call SymbolsPlugin.getSymbolFactories().
The most common use of this extension point is by the JSPModelProcessor. By decorating a tag attribute with meta-data pointing to a context symbol factory with a particular id, the JSP model processor will call that symbol factory to create a symbol for that tag.
See developer docs on decorating variable contributing tags for more information.
Configuration Markup:
<!ELEMENT extension (
contextSymbolFactory)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED
>
<!ELEMENT contextSymbolFactory EMPTY>
<!ATTLIST contextSymbolFactory
factory CDATA #REQUIRED
factoryId CDATA #REQUIRED
>
The context symbol factory description.
-
factory - An instance of AbstractContextSymbolFactory that implements the context symbol factory.
-
factoryId - The id that will be used to uniquely identify this factory in meta-data or elsewhere.
Examples:
The following example creates a symbol factory for creating symbols.
<extension
point=
"org.eclipse.jst.jsf.context.symbol.contextSymbolFactory"
>
<contextSymbolFactory
factory=
"org.eclipse.jst.jsf.designtime.internal.jsp.JSPDefaultSymbolFactory"
factoryId=
"org.eclipse.jst.jsf.designtime.core.loadBundle"
/>
</extension>
When the symbol factory org.eclipse.jst.jsf.designtime.core.loadBundle is requested, an instance of JSPDefaultSymbolFactory will be constructed.
Copyright 2006 Oracle
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-v10.html