blob: 178760999d73cc42cbc01a213fbe7d6a57742e65 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.myfaces.trinidadbuild.plugin.faces.parse;
/**
* PropertyBean is a Java representation of the faces-config component property
* XML element.
*/
public class PropertyBean extends AttributeBean
{
public void setUseMaxTime(boolean _useMaxTime)
{
this._useMaxTime = _useMaxTime;
}
public boolean getUseMaxTime()
{
return _useMaxTime;
}
/**
* Sets the name of this property.
*
* @param propertyName the property name
*/
public void setPropertyName(
String propertyName)
{
setAttributeName(propertyName);
}
/**
* Returns the name of this property.
*
* @return the property name
*/
public String getPropertyName()
{
return getAttributeName();
}
/**
* Sets the property class for this property.
*
* @param propertyClass the property class
*/
public void setPropertyClass(
String propertyClass)
{
setAttributeClass(propertyClass);
}
/**
* Returns the property class for this property.
*
* @return the property class
*/
public String getPropertyClass()
{
return getAttributeClass();
}
/**
* Returns the array of parameterized types for this property
* if it uses generics.
*
* @return the array of parameterized types for this property
*/
public String[] getPropertyClassParameters()
{
return getAttributeClassParameters();
}
/**
* Sets the possible values for this property.
*
* @param propertyValues the property values
*/
public void setPropertyValues(
String[] propertyValues)
{
_propertyValues = propertyValues;
}
/**
* Returns possible values for this property.
*
* @return the property values
*/
public String[] getPropertyValues()
{
return _propertyValues;
}
/**
* Sets the stateHolder flag of this property.
*
* @param stateHolder the property stateHolder flag
*/
public void setStateHolder(
boolean stateHolder)
{
_stateHolder = stateHolder;
}
/**
* Returns stateHolder flag of this property.
*
* @return the property stateHolder flag
*/
public boolean isStateHolder()
{
return _stateHolder;
}
/**
* Sets the mutable value of this property.
*
* @param mutable the property mutable value
*/
public void setMutable(
String mutable)
{
_mutable = mutable;
}
/**
* Returns mutable value of this property.
*
* @return the property mutable value
*/
public String getMutable()
{
return _mutable;
}
/**
* Sets the transient flag of this property.
*
* @param transient_ the property transient flag
*/
public void setTransient(
boolean transient_)
{
_transient = transient_;
}
/**
* Returns transient flag of this property.
*
* @return the property transient flag
*/
public boolean isTransient()
{
return _transient;
}
/**
* Sets the list flag of this property.
*
* @param list_ the property list flag
*/
public void setList(
boolean list_)
{
_list = list_;
}
/**
* Returns list flag of this property.
*
* @return the property list flag
*/
public boolean isList()
{
return _list;
}
/**
* Sets the required flag of this property.
*
* @param required the property required flag
*/
public void setRequired(
boolean required)
{
_required = required;
}
/**
* Returns required flag of this property.
*
* @return the property required flag
*/
public boolean isRequired()
{
return _required;
}
/**
* Sets the literalOnly flag of this property.
*
* @param literalOnly the property literalOnly flag
*/
public void setLiteralOnly(
boolean literalOnly)
{
_literalOnly = literalOnly;
}
/**
* Returns literalOnly flag of this property.
*
* @return the property literalOnly flag
*/
public boolean isLiteralOnly()
{
return _literalOnly;
}
/**
* Set the property as allowing ${} syntax
* @param rtexprvalue the rtexrvalue value
*/
public void setRtexprvalue(boolean rtexprvalue)
{
_rtexprvalue = rtexprvalue;
}
/**
* Return the rtexrvalue flag
*/
public boolean isRtexprvalue()
{
return _rtexprvalue;
}
/**
* Sets the alias of this property.
*
* @param aliasOf the property alias
*/
public void setAliasOf(
String aliasOf)
{
_aliasOf = aliasOf;
}
/**
* Returns the alias of this property.
*
* @return the property alias
*/
public String getAliasOf()
{
return _aliasOf;
}
/**
* Sets the unsupported agents for this property.
*
* @param unsupportedAgents the unsupported agents
*/
public void setUnsupportedAgents(
String[] unsupportedAgents)
{
if (unsupportedAgents == null)
throw new NullPointerException("unsupportedAgents");
_unsupportedAgents = unsupportedAgents;
}
/**
* Returns unsupported agents for this property.
*
* @return the unsupported agents
*/
public String[] getUnsupportedAgents()
{
return _unsupportedAgents;
}
/**
* Sets the unsupported RenderKits for this property.
*
* @param unsupportedRenderKits the unsupported RenderKits
*/
public void setUnsupportedRenderKits(
String[] unsupportedRenderKits)
{
if (unsupportedRenderKits == null)
throw new NullPointerException("unsupportedRenderKits");
_unsupportedRenderKits = unsupportedRenderKits;
}
/**
* Returns unsupported RenderKits for this property.
*
* @return the unsupported RenderKits
*/
public String[] getUnsupportedRenderKits()
{
return _unsupportedRenderKits;
}
/**
* Sets the tag attribute excluded flag for this property.
*
* @param excluded true, if the tag attribute should be excluded;
* false, otherwise
*/
public void setTagAttributeExcluded(
boolean excluded)
{
_tagAttributeExcluded = excluded;
}
/**
* Returns the tag attribute excluded flag for this property.
*
* @return true, if the tag attribute should be excluded;
* false, otherwise
*/
public boolean isTagAttributeExcluded()
{
return _tagAttributeExcluded;
}
/**
* Returns true if the property is an enumerated Java type.
*/
public boolean isEnum()
{
return _enum;
}
/**
* Returns true if the property is an enumerated Java type.
*/
public void setEnum(boolean isEnum)
{
_enum = isEnum;
}
/**
* Returns true if this property is a method binding.
*
* @return true if this property is a method binding,
* otherwise false
*/
public boolean isMethodBinding()
{
return ("javax.faces.el.MethodBinding".equals(getPropertyClass()));
}
/**
* Returns true if this property is a method binding.
*
* @return true if this property is a method binding,
* otherwise false
*/
public boolean isMethodExpression()
{
return ("javax.el.MethodExpression".equals(getPropertyClass()));
}
/**
* Parses the possible values for this property into a String array
* using space as the separator between values.
*
* @param propertyValues the property values
*/
public void parsePropertyValues(
String propertyValues)
{
setPropertyValues(propertyValues.split(" "));
}
/**
* Parses the unsupported agents for this property into a String array
* using space as the separator between values.
*
* @param unsupportedAgents the unsupported agents
*/
public void parseUnsupportedAgents(
String unsupportedAgents)
{
setUnsupportedAgents(unsupportedAgents.split(" "));
}
/**
* Parses the unsupported RenderKits for this property into a String array
* using space as the separator between values.
*
* @param unsupportedRenderKits the unsupported RenderKits
*/
public void parseUnsupportedRenderKits(
String unsupportedRenderKits)
{
setUnsupportedRenderKits(unsupportedRenderKits.split(" "));
}
/**
* Sets the JSP name of this property.
*
* @param jspPropertyName the JSP property name
*/
public void setJspPropertyName(
String jspPropertyName)
{
_jspPropertyName = jspPropertyName;
}
/**
* Returns the JSP name of this property.
*
* @return the JSP property name
*/
public String getJspPropertyName()
{
if (_jspPropertyName == null)
return getPropertyName();
return _jspPropertyName;
}
/**
* Sets the field name of this property, when not generating Trinidad components
*
* @param fieldPropertyName the field property name
*/
public void setFieldPropertyName(
String fieldPropertyName)
{
_fieldPropertyName = fieldPropertyName;
}
/**
* Returns the field name of this property, when not generating Trinidad components
*
* @return the field property name
*/
public String getFieldPropertyName()
{
if (_fieldPropertyName == null)
return "_"+getPropertyName();
return _fieldPropertyName;
}
/**
* If the property should be hidden from documentation
* @return If the facet should be hidden
*/
public boolean isHidden()
{
return _hidden;
}
/**
* Set if this facet should be hidden from documentation
* @param hidden If the facet should be hidden
*/
public void setHidden(boolean hidden)
{
this._hidden = hidden;
}
/**
* Sets the property deprecated flag
* @param deprecated
*/
public void setDeprecated(String deprecated)
{
this._deprecated = deprecated;
}
/**
* Value is provided through the deprecated extended property metadata.
* @return deprecated description if the component property should be deprecated
*/
public String getDeprecated() {
return _deprecated;
}
/**
* @return <code>true</code> if the property should be generated with a no-op
* setter.
*/
public boolean isNoOp()
{
return _noOp;
}
/**
* Invoked if the no-op extended property meta-data is provided for the component
* property.
*/
public void makeNoOp()
{
this._noOp = true;
}
/**
* Sets the property valueExpression
* @param valueExpression
*/
public void setValueExpression(String valueExpression)
{
this._valueExpression = valueExpression;
// This is for backward compatibility from jsr-276 metadata. The old element
// <mfp:literal-only>true</mfp:literal-only> is now
// <fmd:value-expression>PROHIBITED</fmd:value-expression>. There are a number of places
// that look at literalOnly, so we just make it transparent at the lowest level.
if (valueExpression.equals("PROHIBITED"))
setLiteralOnly(true);
}
/**
* Value is provided through the valueExpression property metadata.
* @return valueExpression of the property
*/
public String getValueExpression()
{
return _valueExpression;
}
/**
* Set if this property is overridding a property in an ancestor class.
* @param override if overridding a property
*/
public void setOverride(boolean override)
{
this._override = override;
}
/**
* Get if this property is overridding a property in an ancestor class.
* @return If the property is an overide
*/
public boolean isOverride()
{
return _override;
}
private String _aliasOf;
private String _jspPropertyName;
private String _fieldPropertyName;
private boolean _required;
private boolean _literalOnly;
private boolean _rtexprvalue;
private boolean _stateHolder;
private boolean _transient;
private boolean _list;
private String _mutable;
private boolean _tagAttributeExcluded;
private boolean _enum;
private boolean _useMaxTime;
private boolean _hidden;
private boolean _override;
private String[] _propertyValues;
private String[] _unsupportedAgents = _EMPTY_ARRAY;
private String[] _unsupportedRenderKits = _EMPTY_ARRAY;
private String _deprecated;
private boolean _noOp = false;
private String _valueExpression;
static private String[] _EMPTY_ARRAY = new String[0];
}