###############################################################################
# Copyright (c) 2005 Oracle Corporation.
# 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
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#    Gerry Kessler - initial API and implementation
###############################################################################
plugin.name=JSF Tools - Core
plugin.provider=Eclipse Web Tools Platform
plugin.facet.name=JavaServer Faces
plugin.facet.description=Enables the project to be deployed with JSF capabilities.

JSFELValidator=JSP JSF EL Validator

JSFv11Project=JavaServer Faces v1.1 Project
JSFv11PresetDesc=Configures a Dynamic Web application to use JSF v1.1

JSFv12Project=JavaServer Faces v1.2 Project
JSFv12PresetDesc=Configures a Dynamic Web application to use JSF v1.2

JSFv20Project=JavaServer Faces v2.0 Project
JSFv20PresetDesc=Configures a Dynamic Web application to use JSF v2.0

JSFv21Project=JavaServer Faces v2.1 Project
JSFv21PresetDesc=Configures a Dynamic Web application to use JSF v2.1

JSFv22Project=JavaServer Faces v2.2 Project
JSFv22PresetDesc=Configures a Dynamic Web application to use JSF v2.2
# ====================================================================

pluginName = Constraints Model
providerName = www.example.org

#=================================
jsp.tag.registry=JSP Tag Registry

plugin.facet.extension.name=JavaServer Faces

JSP_TAG_REGISTRY_DESCRIPTION = JSP tag registry
extension-point.name.0 = jsfLibraries
extension-point.name.1 = pluginProvidedJsfLibraries
extension-point.name.2 = Property Resolver Ext Point
extension-point.name.3 = Method Resolver Ext Point
extension-point.name.4 = External Context Ext Point
extension-point.name.5 = MetaDataEnabledFeatures
extension-point.name.6 = JSF View Handler Extension
extension-point.name.7 = customViewMapper
extension-point.name.8 = Variable Resolver Ext Point
extension-point.name.9 = AttributeValueRuntimeTypes
extension-point.name.10 = JSF Tag Library Registry
extension-point.name.11 = JSF Facet Configuration

noOpLibraryProviderWarning = Library configuration is disabled. Further classpath changes may be required later.
noOpLibraryProviderMessage = This facet requires JSF implementation library to be present on project classpath. By disabling library configuration, user takes on responsibility of configuring classpath appropriately via alternate means.

extension-point.name.12 = Symbol Context Resolver Factory Delegate
extension-point.name.13 = Tag Registry Factory
extension-point.name.14 = JSF AppConfig Locator Provider Factory (internal)
extension-point.name.15 = JSF AppConfig Manager Factory (internal)
Facelet.name=Facelet
FaceletComposite.name=Facelet Composite Component
extension-point.name.viewHandlerOverride = viewHandlerOverride