This is an automated email from the ASF dual-hosted git repository.
doebele pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/empire-db.git
The following commit(s) were added to refs/heads/master by this push:
new 9cf0fd2 EMPIREDB-320 API-change for InputControl.updateInputState
replacing parameter save (boolean) by phaseId. see JIRA Ticket for details.
9cf0fd2 is described below
commit 9cf0fd2e541c7a551825e45e7edc99fa74f04a54
Author: Rainer Döbele <[email protected]>
AuthorDate: Tue Jan 14 12:27:28 2020 +0100
EMPIREDB-320
API-change for InputControl.updateInputState replacing parameter save
(boolean) by phaseId.
see JIRA Ticket for details.
---
.../empire/jsf2/custom/controls/FileInputControl.java | 9 ++++++---
.../org/apache/empire/jsf2/components/ControlTag.java | 4 ++--
.../org/apache/empire/jsf2/components/InputTag.java | 4 ++--
.../empire/jsf2/controls/CheckboxInputControl.java | 15 +++++++++------
.../org/apache/empire/jsf2/controls/InputControl.java | 7 ++++---
.../empire/jsf2/controls/RadioInputControl.java | 19 +++++++++++--------
.../empire/jsf2/controls/SelectInputControl.java | 13 ++++++++-----
.../empire/jsf2/controls/TextAreaInputControl.java | 7 ++++---
.../apache/empire/jsf2/controls/TextInputControl.java | 7 ++++---
9 files changed, 50 insertions(+), 35 deletions(-)
diff --git
a/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/custom/controls/FileInputControl.java
b/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/custom/controls/FileInputControl.java
index 2b42e80..aef7ecb 100644
---
a/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/custom/controls/FileInputControl.java
+++
b/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/custom/controls/FileInputControl.java
@@ -23,6 +23,7 @@ import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.component.html.HtmlInputText;
import javax.faces.context.FacesContext;
+import javax.faces.event.PhaseId;
import org.apache.empire.exceptions.InternalException;
import org.apache.empire.exceptions.UnexpectedReturnValueException;
@@ -64,11 +65,11 @@ public class FileInputControl extends InputControl
}
compList.add(input);
// update
- updateInputState(compList, ii, context, true);
+ updateInputState(compList, ii, context, context.getCurrentPhaseId());
}
@Override
- protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, boolean setValue)
+ protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
UIComponent comp = compList.get(0);
if (!(comp instanceof HtmlInputFile))
@@ -79,8 +80,10 @@ public class FileInputControl extends InputControl
HtmlInputFile input = (HtmlInputFile) comp;
input.setDisabled(ii.isDisabled());
// set value
- if (setValue)
+ if (phaseId==PhaseId.RENDER_RESPONSE)
+ { // set value
setInputValue(input, ii);
+ }
}
public class HtmlInputFile extends HtmlInputText
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
index 8c1698a..e89eb58 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ControlTag.java
@@ -483,7 +483,7 @@ public class ControlTag extends UIInput implements
NamingContainer
}
else
{ // Update
- control.updateInputState(parent, inpInfo, context, true);
+ control.updateInputState(parent, inpInfo, context,
context.getCurrentPhaseId());
}
// set rendered
boolean renderValue = helper.isRenderValueComponent();
@@ -665,7 +665,7 @@ public class ControlTag extends UIInput implements
NamingContainer
if (inpInfo==null)
inpInfo = helper.getInputInfo(context);
// update control
- control.updateInputState(this, inpInfo, context, false);
+ control.updateInputState(this, inpInfo, context,
context.getCurrentPhaseId());
}
protected void setRenderInput(boolean renderInput)
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
index 7736b92..c457cab 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/InputTag.java
@@ -180,7 +180,7 @@ public class InputTag extends UIInput implements
NamingContainer
}
else
{ // update state
- control.updateInputState(this, inpInfo, context, true);
+ control.updateInputState(this, inpInfo, context,
context.getCurrentPhaseId());
}
// set readonly
@@ -376,7 +376,7 @@ public class InputTag extends UIInput implements
NamingContainer
if (inpInfo==null)
inpInfo = helper.getInputInfo(context);
// update control
- control.updateInputState(this, inpInfo, context, false);
+ control.updateInputState(this, inpInfo, context,
context.getCurrentPhaseId());
}
protected void setRenderInput(boolean renderInput)
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
index 1507703..ca3ac7f 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/CheckboxInputControl.java
@@ -25,6 +25,7 @@ import javax.faces.component.UIComponent;
import javax.faces.component.html.HtmlSelectBooleanCheckbox;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
+import javax.faces.event.PhaseId;
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.exceptions.InvalidArgumentException;
@@ -82,11 +83,11 @@ public class CheckboxInputControl extends InputControl
// add
compList.add(input);
// set style and value
- updateInputState(compList, ii, context, true);
+ updateInputState(compList, ii, context, context.getCurrentPhaseId());
}
@Override
- protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, boolean setValue)
+ protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
UIComponent comp = compList.get(0);
if (!(comp instanceof HtmlSelectBooleanCheckbox))
@@ -97,11 +98,13 @@ public class CheckboxInputControl extends InputControl
// disabled
boolean disabled = ii.isDisabled();
input.setDisabled(disabled);
- // style
- addRemoveDisabledStyle(input, input.isDisabled());
- // set value
- if (setValue)
+ // check phase
+ if (phaseId==PhaseId.RENDER_RESPONSE)
+ { // style
+ addRemoveDisabledStyle(input, input.isDisabled());
+ // set value
setInputValue(input, ii);
+ }
}
@Override
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
index c3d7397..03b7815 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/InputControl.java
@@ -31,6 +31,7 @@ import javax.faces.component.UIInput;
import javax.faces.component.behavior.ClientBehaviorHolder;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
+import javax.faces.event.PhaseId;
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.Options;
@@ -283,12 +284,12 @@ public abstract class InputControl
}
}
- public void updateInputState(UIComponent parent, InputInfo ii,
FacesContext context, boolean setValue)
+ public void updateInputState(UIComponent parent, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
List<UIComponent> cl = parent.getChildren();
if (cl.isEmpty())
return;
- updateInputState(cl, ii, context, setValue);
+ updateInputState(cl, ii, context, phaseId);
// update attached objects
List<UIComponent> children = parent.getChildren();
while (!(parent instanceof UIInput))
@@ -542,7 +543,7 @@ public abstract class InputControl
/* Input helpers */
protected abstract void createInputComponents(UIComponent parent,
InputInfo ii, FacesContext context, List<UIComponent> compList);
- protected abstract void updateInputState(List<UIComponent> compList,
InputInfo ii, FacesContext context, boolean setValue);
+ protected abstract void updateInputState(List<UIComponent> compList,
InputInfo ii, FacesContext context, PhaseId phaseId);
protected UIInput getInputComponent(UIComponent parent)
{
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
index 955f981..97e0af7 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/RadioInputControl.java
@@ -29,6 +29,7 @@ import javax.faces.component.UISelectItem;
import javax.faces.component.html.HtmlSelectOneRadio;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
+import javax.faces.event.PhaseId;
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.OptionEntry;
@@ -143,7 +144,7 @@ public class RadioInputControl extends InputControl
}
@Override
- protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, boolean setValue)
+ protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
UIComponent comp = compList.get(0);
if (!(comp instanceof HtmlSelectOneRadio))
@@ -154,13 +155,15 @@ public class RadioInputControl extends InputControl
// disabled
boolean disabled = ii.isDisabled();
input.setDisabled(disabled);
- // Options (sync)
- Options options = ii.getOptions();
- boolean addEmpty = getEmptyEntryRequired(ii, disabled) &&
!options.containsNull();
- String nullText = (addEmpty) ? getNullText(ii) : "";
- syncOptions(input, ii.getTextResolver(), options, addEmpty, nullText);
- // Set Value
- if (setValue)
+ // check phase
+ if (phaseId!=PhaseId.APPLY_REQUEST_VALUES)
+ { // Options (sync)
+ Options options = ii.getOptions();
+ boolean addEmpty = getEmptyEntryRequired(ii, disabled) &&
!options.containsNull();
+ String nullText = (addEmpty) ? getNullText(ii) : "";
+ syncOptions(input, ii.getTextResolver(), options, addEmpty,
nullText);
+ }
+ if (phaseId==PhaseId.RENDER_RESPONSE)
{ // style
addRemoveDisabledStyle(input, input.isDisabled());
addRemoveInvalidStyle(input, ii.hasError());
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
index 2a06c40..c9021c3 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/SelectInputControl.java
@@ -26,6 +26,7 @@ import javax.faces.component.UIComponent;
import javax.faces.component.UISelectItem;
import javax.faces.component.html.HtmlSelectOneMenu;
import javax.faces.context.FacesContext;
+import javax.faces.event.PhaseId;
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.OptionEntry;
@@ -95,7 +96,7 @@ public class SelectInputControl extends InputControl
}
@Override
- protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, boolean setValue)
+ protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
UIComponent comp = compList.get(0);
if (!(comp instanceof HtmlSelectOneMenu))
@@ -108,10 +109,12 @@ public class SelectInputControl extends InputControl
// disabled
boolean disabled = ii.isDisabled();
input.setDisabled(disabled);
- // Options (sync)
- syncOptions(input, ii.getTextResolver(), ii);
- // set value
- if (setValue)
+ // check phase
+ if (phaseId!=PhaseId.APPLY_REQUEST_VALUES)
+ { // Options (sync)
+ syncOptions(input, ii.getTextResolver(), ii);
+ }
+ if (phaseId==PhaseId.RENDER_RESPONSE)
{ // style
addRemoveDisabledStyle(input, input.isDisabled());
addRemoveInvalidStyle(input, ii.hasError());
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextAreaInputControl.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextAreaInputControl.java
index d313ea5..ae7aceb 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextAreaInputControl.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextAreaInputControl.java
@@ -23,6 +23,7 @@ import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.component.html.HtmlInputTextarea;
import javax.faces.context.FacesContext;
+import javax.faces.event.PhaseId;
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.StringUtils;
@@ -75,11 +76,11 @@ public class TextAreaInputControl extends InputControl
// add
compList.add(input);
// update
- updateInputState(compList, ii, context, true);
+ updateInputState(compList, ii, context, context.getCurrentPhaseId());
}
@Override
- protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, boolean setValue)
+ protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
UIComponent comp = compList.get(0);
if (!(comp instanceof HtmlInputTextarea))
@@ -95,7 +96,7 @@ public class TextAreaInputControl extends InputControl
if (ObjectUtils.getBoolean(dis)==false)
input.setReadonly(ii.isFieldReadOnly());
// Set Value
- if (setValue)
+ if (phaseId==PhaseId.RENDER_RESPONSE)
{ // style
addRemoveDisabledStyle(input, (input.isDisabled() ||
input.isReadonly()));
addRemoveInvalidStyle(input, ii.hasError());
diff --git
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
index cdef3b1..2491ec8 100644
---
a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
+++
b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
@@ -34,6 +34,7 @@ import javax.faces.component.html.HtmlOutputText;
import javax.faces.component.html.HtmlPanelGroup;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
+import javax.faces.event.PhaseId;
import org.apache.empire.commons.ObjectUtils;
import org.apache.empire.commons.Options;
@@ -108,11 +109,11 @@ public class TextInputControl extends InputControl
compList.add(createUnitLabel("eInputHint", ii, hint));
}
// update
- updateInputState(compList, ii, context, true);
+ updateInputState(compList, ii, context, context.getCurrentPhaseId());
}
@Override
- protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, boolean setValue)
+ protected void updateInputState(List<UIComponent> compList, InputInfo ii,
FacesContext context, PhaseId phaseId)
{
UIComponent comp = compList.get(0);
if (!(comp instanceof HtmlInputText))
@@ -132,7 +133,7 @@ public class TextInputControl extends InputControl
input.setReadonly(ii.isFieldReadOnly());
}
// set value
- if (setValue)
+ if (phaseId==PhaseId.RENDER_RESPONSE)
{ // style
addRemoveDisabledStyle(input, (input.isDisabled() ||
input.isReadonly()));
addRemoveInvalidStyle(input, ii.hasError());