You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ta...@apache.org on 2018/12/25 13:54:08 UTC
[myfaces] 02/02: removed TODO
This is an automated email from the ASF dual-hosted git repository.
tandraschko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/myfaces.git
commit 6f3e9d6905086c02af28fbf9fae9dcc163c293d2
Author: Thomas Andraschko <ta...@apache.org>
AuthorDate: Tue Dec 25 14:54:15 2018 +0100
removed TODO
---
.../java/javax/faces/component/UIComponent.java | 5 ++--
.../javax/faces/component/UIComponentBase.java | 6 +---
.../java/javax/faces/context/ExternalContext.java | 9 +-----
.../java/javax/faces/model/ResultSetDataModel.java | 27 ++++++++---------
.../main/java/javax/faces/webapp/FacesServlet.java | 1 -
.../config/annotation/AnnotationConfigurator.java | 1 -
.../context/servlet/PartialViewContextImpl.java | 17 ++---------
.../renderkit/html/HtmlResponseStateManager.java | 2 +-
.../html/base/HtmlButtonRendererBase.java | 7 ++---
.../html/base/HtmlCheckboxRendererBase.java | 8 ++---
.../html/base/HtmlInputFileRendererBase.java | 6 ++--
.../html/base/HtmlListboxRendererBase.java | 10 ++-----
.../renderkit/html/base/HtmlMenuRendererBase.java | 10 ++-----
.../renderkit/html/base/HtmlRadioRendererBase.java | 1 -
.../html/base/HtmlSecretRendererBase.java | 1 -
.../renderkit/html/base/HtmlTextRendererBase.java | 5 +---
.../html/base/HtmlTextareaRendererBase.java | 1 -
.../spi/impl/AllAnnotationInjectionProvider.java | 4 +--
.../apache/myfaces/util/SharedStringBuilder.java | 35 ++++++++++++++++++++++
19 files changed, 68 insertions(+), 88 deletions(-)
diff --git a/api/src/main/java/javax/faces/component/UIComponent.java b/api/src/main/java/javax/faces/component/UIComponent.java
index e37ec95..2b4781c 100755
--- a/api/src/main/java/javax/faces/component/UIComponent.java
+++ b/api/src/main/java/javax/faces/component/UIComponent.java
@@ -812,8 +812,7 @@ public abstract class UIComponent
expression.setValue(getFacesContext().getELContext(), this);
}
- //we issue a PostRestoreStateEvent
- //we issue it here because the spec clearly states what UIComponent is allowed to do
+ //we issue a PostRestoreStateEvent, because the spec clearly states what UIComponent is allowed to do
//the main issue is that the spec does not say anything about a global dispatch on this level
//but a quick blackbox test against the ri revealed that the event clearly is dispatched
//at restore level for every component so we either issue it here or in UIViewRoot and/or the facelet
@@ -843,7 +842,7 @@ public abstract class UIComponent
// avoid StackoverflowException
boolean shouldProcessEvent = true;
if (listener instanceof EventListenerWrapper &&
- ((EventListenerWrapper)listener).listenerCapability ==
+ ((EventListenerWrapper)listener).listenerCapability ==
EventListenerWrapper.LISTENER_TYPE_COMPONENT)
{
shouldProcessEvent = false;
diff --git a/api/src/main/java/javax/faces/component/UIComponentBase.java b/api/src/main/java/javax/faces/component/UIComponentBase.java
index 8c623e2..ccabc5a 100755
--- a/api/src/main/java/javax/faces/component/UIComponentBase.java
+++ b/api/src/main/java/javax/faces/component/UIComponentBase.java
@@ -897,7 +897,6 @@ public abstract class UIComponentBase extends UIComponent
return _clientId;
}
- //boolean idWasNull = false;
String id = getId();
if (id == null)
{
@@ -932,8 +931,6 @@ public abstract class UIComponentBase extends UIComponent
id = parentUniqueIdVendor.createUniqueId(context, null);
}
setId(id);
- // We remember that the id was null and log a warning down below
- // idWasNull = true;
}
UIComponent namingContainer = _ComponentUtils.findParentNamingContainer(this, false);
@@ -2484,7 +2481,7 @@ public abstract class UIComponentBase extends UIComponent
}
}
-/**
+ /**
* <p>
* This gets a single FacesContext-local shared stringbuilder instance, each time you call
* _getSharedStringBuilder it sets the length of the stringBuilder instance to 0.
@@ -2522,7 +2519,6 @@ public abstract class UIComponentBase extends UIComponent
return _getSharedStringBuilder(FacesContext.getCurrentInstance());
}
- // TODO checkstyle complains; does this have to lead with __ ?
static StringBuilder _getSharedStringBuilder(FacesContext facesContext)
{
Map<Object, Object> attributes = facesContext.getAttributes();
diff --git a/api/src/main/java/javax/faces/context/ExternalContext.java b/api/src/main/java/javax/faces/context/ExternalContext.java
index 9e2a58b..32ae2f5 100755
--- a/api/src/main/java/javax/faces/context/ExternalContext.java
+++ b/api/src/main/java/javax/faces/context/ExternalContext.java
@@ -108,7 +108,6 @@ public abstract class ExternalContext
*/
public String encodePartialActionURL(String url)
{
- // TODO: IMPLEMENT IMPL
ExternalContext ctx = _MyFacesExternalContextHelper.firstInstance.get();
if (ctx == null)
@@ -744,10 +743,7 @@ public abstract class ExternalContext
if (ctx == null)
{
- /*throw new UnsupportedOperationException();*/
- // TODO: Return null for now, but it should throw exception
- // in JSF 2.2
- return null;
+ throw new UnsupportedOperationException();
}
return ctx.getClientWindow();
@@ -759,8 +755,6 @@ public abstract class ExternalContext
*/
public void setClientWindow(ClientWindow window)
{
- // No op for now.
- /*
ExternalContext ctx = _MyFacesExternalContextHelper.firstInstance.get();
if (ctx == null)
@@ -769,7 +763,6 @@ public abstract class ExternalContext
}
ctx.setClientWindow(window);
- */
}
/**
diff --git a/api/src/main/java/javax/faces/model/ResultSetDataModel.java b/api/src/main/java/javax/faces/model/ResultSetDataModel.java
index 93db9e6..b8cfacb 100755
--- a/api/src/main/java/javax/faces/model/ResultSetDataModel.java
+++ b/api/src/main/java/javax/faces/model/ResultSetDataModel.java
@@ -36,8 +36,6 @@ import java.util.TreeMap;
*/
public class ResultSetDataModel extends DataModel<Map<String,Object>>
{
- // FIELDS
-
private int _currentIndex = -1;
/**
@@ -55,7 +53,6 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
*/
private boolean _currentRowUpdated = false;
- // CONSTRUCTORS
public ResultSetDataModel()
{
this(null);
@@ -63,10 +60,8 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
public ResultSetDataModel(ResultSet resultSet)
{
-
super();
setWrappedData(resultSet);
-
}
/**
@@ -244,7 +239,6 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
/*
* A map wrapping the result set and calling the corresponding operations on the result set, first setting the
* correct row index.
- * TODO: Implement Map, use internal TreeMap for keys instead, it's cleaner
*/
private class WrapResultSetMap extends TreeMap<String, Object>
{
@@ -307,17 +301,11 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
return null;
}
- return basicGet(key);
- }
-
- private Object basicGet(Object key)
- { // #################################################### remove
try
{
_resultSet.absolute(_currentIndex + 1);
return _resultSet.getObject((String) getUnderlyingKey(key));
-
}
catch (SQLException e)
{
@@ -487,7 +475,6 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
private static class WrapResultSetEntriesIterator implements Iterator<Map.Entry<String, Object>>
{
-
private WrapResultSetMap _wrapMap = null;
private Iterator<String> _keyIterator = null;
@@ -497,16 +484,19 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
_keyIterator = _wrapMap.keySet().iterator();
}
+ @Override
public boolean hasNext()
{
return _keyIterator.hasNext();
}
+ @Override
public Map.Entry<String, Object> next()
{
return new WrapResultSetEntry(_wrapMap, _keyIterator.next());
}
+ @Override
public void remove()
{
throw new UnsupportedOperationException("It is not allowed to remove from this iterator");
@@ -552,11 +542,13 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
return value == null ? cmpValue != null : value.equals(cmpValue);
}
+ @Override
public String getKey()
{
return _entryKey;
}
+ @Override
public Object getValue()
{
return _wrapMap.get(_entryKey);
@@ -571,6 +563,7 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
return result;
}
+ @Override
public Object setValue(Object value)
{
Object oldValue = _wrapMap.get(_entryKey);
@@ -658,16 +651,19 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
_keyIterator = map.getUnderlyingKeys();
}
+ @Override
public boolean hasNext()
{
return _keyIterator.hasNext();
}
+ @Override
public String next()
{
return _keyIterator.next();
}
+ @Override
public void remove()
{
throw new UnsupportedOperationException("it is not allowed to remove from this iterator");
@@ -742,7 +738,6 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
private static class WrapResultSetValuesIterator implements Iterator<Object>
{
-
private WrapResultSetMap _wrapMap;
private Iterator<String> _keyIterator;
@@ -752,21 +747,23 @@ public class ResultSetDataModel extends DataModel<Map<String,Object>>
_keyIterator = _wrapMap.keySet().iterator();
}
+ @Override
public boolean hasNext()
{
return _keyIterator.hasNext();
}
+ @Override
public Object next()
{
return _wrapMap.get(_keyIterator.next());
}
+ @Override
public void remove()
{
throw new UnsupportedOperationException("it is not allowed to remove from this map");
}
-
}
}
diff --git a/api/src/main/java/javax/faces/webapp/FacesServlet.java b/api/src/main/java/javax/faces/webapp/FacesServlet.java
index c4cf36e..513b4ba 100755
--- a/api/src/main/java/javax/faces/webapp/FacesServlet.java
+++ b/api/src/main/java/javax/faces/webapp/FacesServlet.java
@@ -122,7 +122,6 @@ public final class FacesServlet implements Servlet
}
_servletConfig = servletConfig;
_facesContextFactory = (FacesContextFactory)FactoryFinder.getFactory(FactoryFinder.FACES_CONTEXT_FACTORY);
- // TODO: null-check for Weblogic, that tries to initialize Servlet before ContextListener
// Javadoc says: Lifecycle instance is shared across multiple simultaneous requests, it must be implemented in a
// thread-safe manner.
diff --git a/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java b/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java
index 2fe80df..fee1750 100644
--- a/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java
+++ b/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java
@@ -166,7 +166,6 @@ public class AnnotationConfigurator
}
else
{
- // TODO MartinKoci MYFACES-3053
throw new FacesException("@FacesConverter must have value, forClass or both. Check annotation "
+ "@FacesConverter on class: " + clazz.getName());
}
diff --git a/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java b/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java
index 7d6d078..0527308 100644
--- a/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java
+++ b/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java
@@ -50,6 +50,7 @@ import javax.faces.render.RenderKit;
import javax.faces.render.RenderKitFactory;
import javax.faces.view.ViewMetadata;
import org.apache.myfaces.application.ResourceHandlerImpl;
+import org.apache.myfaces.application.viewstate.token.StateTokenProcessor;
import org.apache.myfaces.context.PartialResponseWriterImpl;
import org.apache.myfaces.context.RequestViewContext;
@@ -448,18 +449,6 @@ public class PartialViewContextImpl extends PartialViewContext
private void processPartialRendering(UIViewRoot viewRoot, PhaseId phaseId)
{
- //TODO process partial rendering
- //https://issues.apache.org/jira/browse/MYFACES-2118
- //Collection<String> renderIds = getRenderIds();
-
- // We need to always update the view state marker when processing partial
- // rendering, because there is no way to check when the state has been changed
- // or not. Anyway, if we return empty response, according to the spec a javascript
- // message displayed, so we need to return something.
- //if (renderIds == null || renderIds.isEmpty()) {
- // return;
- //}
-
// note that we cannot use this.getPartialResponseWriter(), because
// this could cause problems if PartialResponseWriter is wrapped
PartialResponseWriter writer = _facesContext.getPartialViewContext().getPartialResponseWriter();
@@ -575,12 +564,10 @@ public class PartialViewContextImpl extends PartialViewContext
}
else if (viewRoot.isTransient())
{
- //TODO: fix javascript side, so the field is not removed on ajax form update
writer.startUpdate(HtmlResponseStateManager.generateUpdateViewStateId(
_facesContext));
- writer.write("stateless");
+ writer.write(StateTokenProcessor.STATELESS_TOKEN);
writer.endUpdate();
- //END TODO
}
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java
index 855dca3..3600f86 100755
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java
@@ -219,7 +219,7 @@ public class HtmlResponseStateManager extends MyfacesResponseStateManager
{
String encodedState =
context.getExternalContext().getRequestParameterMap().get(ResponseStateManager.VIEW_STATE_PARAM);
- if (encodedState==null || ((String) encodedState).length() == 0)
+ if (encodedState == null || ((String) encodedState).length() == 0)
{
return false;
}
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlButtonRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlButtonRendererBase.java
index 6e95fef..f0cee55 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlButtonRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlButtonRendererBase.java
@@ -486,15 +486,12 @@ public class HtmlButtonRendererBase extends HtmlRenderer
protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
{
- //TODO: overwrite in extended HtmlButtonRenderer and check for enabledOnUserRole
if (uiComponent instanceof HtmlCommandButton)
{
- return ((HtmlCommandButton)uiComponent).isDisabled();
+ return ((HtmlCommandButton) uiComponent).isDisabled();
}
- return RendererUtils.getBooleanAttribute(
- uiComponent, HTML.DISABLED_ATTR, false);
-
+ return RendererUtils.getBooleanAttribute(uiComponent, HTML.DISABLED_ATTR, false);
}
protected boolean isReadonly(FacesContext facesContext, UIComponent uiComponent)
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlCheckboxRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlCheckboxRendererBase.java
index 5fc049d..19dec9f 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlCheckboxRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlCheckboxRendererBase.java
@@ -453,8 +453,6 @@ public class HtmlCheckboxRendererBase extends HtmlRenderer
protected boolean isDisabled(FacesContext facesContext, UIComponent component)
{
- //TODO: overwrite in extended HtmlCheckboxRenderer and check for
- // enabledOnUserRole
if (component instanceof HtmlSelectBooleanCheckbox)
{
return ((HtmlSelectBooleanCheckbox) component).isDisabled();
@@ -463,10 +461,8 @@ public class HtmlCheckboxRendererBase extends HtmlRenderer
{
return ((HtmlSelectManyCheckbox) component).isDisabled();
}
- else
- {
- return RendererUtils.getBooleanAttribute(component, HTML.DISABLED_ATTR, false);
- }
+
+ return RendererUtils.getBooleanAttribute(component, HTML.DISABLED_ATTR, false);
}
@Override
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlInputFileRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlInputFileRendererBase.java
index b6cb54b..aa60aed 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlInputFileRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlInputFileRendererBase.java
@@ -43,6 +43,7 @@ import javax.faces.component.behavior.ClientBehavior;
import javax.faces.component.behavior.ClientBehaviorHolder;
import javax.faces.component.html.HtmlForm;
import javax.faces.component.html.HtmlInputText;
+import org.apache.myfaces.renderkit.RendererUtils;
import org.apache.myfaces.renderkit.html.util.HttpPartWrapper;
import org.apache.myfaces.renderkit.html.util.HTML;
@@ -244,15 +245,12 @@ public class HtmlInputFileRendererBase extends HtmlRenderer
protected boolean isDisabled(FacesContext facesContext, UIComponent component)
{
- //TODO: overwrite in extended HtmlTextRenderer and check for enabledOnUserRole
if (component instanceof HtmlInputText)
{
return ((HtmlInputText)component).isDisabled();
}
- return org.apache.myfaces.renderkit.RendererUtils.getBooleanAttribute(component,
- HTML.DISABLED_ATTR, false);
-
+ return RendererUtils.getBooleanAttribute(component, HTML.DISABLED_ATTR, false);
}
/**
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlListboxRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlListboxRendererBase.java
index ce1f232..7df5674 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlListboxRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlListboxRendererBase.java
@@ -96,13 +96,11 @@ public class HtmlListboxRendererBase
UISelectMany selectMany, boolean disabled, int size,
Converter converter) throws IOException
{
- internalRenderSelect(facesContext, selectMany, disabled, size, true,
- converter);
+ internalRenderSelect(facesContext, selectMany, disabled, size, true, converter);
}
protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
{
- //TODO: overwrite in extended HtmlListboxRenderer and check for enabledOnUserRole
if (uiComponent instanceof HtmlSelectManyListbox)
{
return ((HtmlSelectManyListbox)uiComponent).isDisabled();
@@ -111,10 +109,8 @@ public class HtmlListboxRendererBase
{
return ((HtmlSelectOneListbox)uiComponent).isDisabled();
}
- else
- {
- return RendererUtils.getBooleanAttribute(uiComponent, HTML.DISABLED_ATTR, false);
- }
+
+ return RendererUtils.getBooleanAttribute(uiComponent, HTML.DISABLED_ATTR, false);
}
@Override
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlMenuRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlMenuRendererBase.java
index b3139a9..53e649b 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlMenuRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlMenuRendererBase.java
@@ -92,13 +92,11 @@ public class HtmlMenuRendererBase
UISelectMany selectMany, boolean disabled, Converter converter)
throws IOException
{
- internalRenderSelect(facesContext, selectMany, disabled, 1, true,
- converter);
+ internalRenderSelect(facesContext, selectMany, disabled, 1, true, converter);
}
protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
{
- //TODO: overwrite in extended HtmlMenuRenderer and check for enabledOnUserRole
if (uiComponent instanceof HtmlSelectManyMenu)
{
return ((HtmlSelectManyMenu)uiComponent).isDisabled();
@@ -107,10 +105,8 @@ public class HtmlMenuRendererBase
{
return ((HtmlSelectOneMenu)uiComponent).isDisabled();
}
- else
- {
- return RendererUtils.getBooleanAttribute(uiComponent, HTML.DISABLED_ATTR, false);
- }
+
+ return RendererUtils.getBooleanAttribute(uiComponent, HTML.DISABLED_ATTR, false);
}
public void decode(FacesContext facesContext, UIComponent uiComponent)
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlRadioRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlRadioRendererBase.java
index 1083acf..2fd11fc 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlRadioRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlRadioRendererBase.java
@@ -517,7 +517,6 @@ public class HtmlRadioRendererBase extends HtmlRenderer
protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
{
- //TODO: overwrite in extended HtmlRadioRenderer and check for enabledOnUserRole
if (uiComponent instanceof HtmlSelectOneRadio)
{
return ((HtmlSelectOneRadio)uiComponent).isDisabled();
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlSecretRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlSecretRendererBase.java
index 5a09021..4c86251 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlSecretRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlSecretRendererBase.java
@@ -185,7 +185,6 @@ public class HtmlSecretRendererBase extends HtmlRenderer
protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
{
- //TODO: overwrite in extended HtmlSecretRenderer and check for enabledOnUserRole
if (uiComponent instanceof HtmlInputSecret)
{
return ((HtmlInputSecret)uiComponent).isDisabled();
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextRendererBase.java
index d6cdfc7..54decd7 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextRendererBase.java
@@ -293,15 +293,12 @@ public class HtmlTextRendererBase
protected boolean isDisabled(FacesContext facesContext, UIComponent component)
{
- //TODO: overwrite in extended HtmlTextRenderer and check for enabledOnUserRole
if (component instanceof HtmlInputText)
{
return ((HtmlInputText)component).isDisabled();
}
- return RendererUtils.getBooleanAttribute(component,
- HTML.DISABLED_ATTR, false);
-
+ return RendererUtils.getBooleanAttribute(component, HTML.DISABLED_ATTR, false);
}
/**
diff --git a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextareaRendererBase.java b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextareaRendererBase.java
index 15f15ea..28a81cf 100644
--- a/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextareaRendererBase.java
+++ b/impl/src/main/java/org/apache/myfaces/renderkit/html/base/HtmlTextareaRendererBase.java
@@ -196,7 +196,6 @@ public class HtmlTextareaRendererBase extends HtmlRenderer
protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
{
- //TODO: overwrite in extended HtmlTextareaRenderer and check for enabledOnUserRole
if (uiComponent instanceof HtmlInputTextarea)
{
return ((HtmlInputTextarea)uiComponent).isDisabled();
diff --git a/impl/src/main/java/org/apache/myfaces/spi/impl/AllAnnotationInjectionProvider.java b/impl/src/main/java/org/apache/myfaces/spi/impl/AllAnnotationInjectionProvider.java
index edeade4..968cf35 100644
--- a/impl/src/main/java/org/apache/myfaces/spi/impl/AllAnnotationInjectionProvider.java
+++ b/impl/src/main/java/org/apache/myfaces/spi/impl/AllAnnotationInjectionProvider.java
@@ -30,10 +30,8 @@ import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Field;
-// TODO @EJBs
public class AllAnnotationInjectionProvider extends ResourceAnnotationInjectionProvider
{
-
public AllAnnotationInjectionProvider(Context context)
{
super(context);
@@ -54,7 +52,7 @@ public class AllAnnotationInjectionProvider extends ResourceAnnotationInjectionP
EJB annotation = method.getAnnotation(EJB.class);
lookupMethodResource(context, instance, method, annotation.name());
}
- // TODO where i find WebServiceRef?
+ // not implemented since 1.x, lets ignore it
/*if (method.isAnnotationPresent(WebServiceRef.class)) {
WebServiceRef annotation =
(WebServiceRef) method.getAnnotation(WebServiceRef.class);
diff --git a/impl/src/main/java/org/apache/myfaces/util/SharedStringBuilder.java b/impl/src/main/java/org/apache/myfaces/util/SharedStringBuilder.java
index 8f5ba83..cb5e078 100644
--- a/impl/src/main/java/org/apache/myfaces/util/SharedStringBuilder.java
+++ b/impl/src/main/java/org/apache/myfaces/util/SharedStringBuilder.java
@@ -21,6 +21,41 @@ package org.apache.myfaces.util;
import java.util.Map;
import javax.faces.context.FacesContext;
+/**
+ * <p>
+ * This gets a single FacesContext-local shared stringbuilder instance, each
+ * time you call _getSharedStringBuilder it sets the length of the stringBuilder
+ * instance to 0.
+ * </p><p>
+ * This allows you to use the same StringBuilder instance over and over. You
+ * must call toString on the instance before calling _getSharedStringBuilder
+ * again.
+ * </p>
+ * Example that works
+ * <pre><code>
+ * StringBuilder sb1 = _getSharedStringBuilder();
+ * sb1.append(a).append(b);
+ * String c = sb1.toString();
+ *
+ * StringBuilder sb2 = _getSharedStringBuilder();
+ * sb2.append(b).append(a);
+ * String d = sb2.toString();
+ * </code></pre>
+ * <br><br>
+ * Example that doesn't work, you must call toString on sb1 before calling
+ * _getSharedStringBuilder again.
+ * <pre><code>
+ * StringBuilder sb1 = _getSharedStringBuilder();
+ * StringBuilder sb2 = _getSharedStringBuilder();
+ *
+ * sb1.append(a).append(b);
+ * String c = sb1.toString();
+ *
+ * sb2.append(b).append(a);
+ * String d = sb2.toString();
+ * </code></pre>
+ *
+ */
public class SharedStringBuilder
{
public static StringBuilder get(String stringBuilderKey)