[jboss-cvs] jboss-seam/src/main/org/jboss/seam/pages ...
Gavin King
gavin.king at jboss.com
Thu Mar 8 21:14:15 EST 2007
User: gavin
Date: 07/03/08 21:14:15
Modified: src/main/org/jboss/seam/pages
ConversationIdParameter.java
ELConversationIdParameter.java Page.java
SyntheticConversationIdParameter.java
Log:
fix another bug in natural conversation ids
Revision Changes Path
1.4 +1 -1 jboss-seam/src/main/org/jboss/seam/pages/ConversationIdParameter.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ConversationIdParameter.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pages/ConversationIdParameter.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- ConversationIdParameter.java 9 Mar 2007 00:17:51 -0000 1.3
+++ ConversationIdParameter.java 9 Mar 2007 02:14:15 -0000 1.4
@@ -7,7 +7,7 @@
String getName();
String getParameterName();
String getParameterValue();
-
+ String getConversationId();
String getInitialConversationId(Map parameters);
String getRequestConversationId(Map parameters);
}
1.4 +14 -24 jboss-seam/src/main/org/jboss/seam/pages/ELConversationIdParameter.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ELConversationIdParameter.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pages/ELConversationIdParameter.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- ELConversationIdParameter.java 9 Mar 2007 00:17:51 -0000 1.3
+++ ELConversationIdParameter.java 9 Mar 2007 02:14:15 -0000 1.4
@@ -24,7 +24,8 @@
this.name = name;
this.parameterName = paramName;
- this.vb = expression != null ? Expressions.instance().createValueBinding(expression) : null;
+ this.vb = expression != null ?
+ Expressions.instance().createValueBinding(expression) : null;
}
public String getName()
@@ -40,7 +41,7 @@
public String getInitialConversationId(Map parameters)
{
String id = getRequestConversationId(parameters);
- return id==null ? Id.nextId() : id;
+ return id==null ? Id.nextId() : id; //TODO: should we try using the expression?
}
public String getRequestConversationId(Map parameters)
@@ -56,34 +57,23 @@
}
}
- public String getParameterValue()
- {
- Object value = vb.getValue();
- if (value != null)
+ public String getConversationId()
{
- //TODO: use a JSF converter!
- return vb.getValue().toString();
+ return name + ':' + getParameterValue();
}
- /*else
- {
- String conversationId = Manager.instance().getCurrentConversationId();
- if (conversationId != null)
+
+ public String getParameterValue()
{
- int idx = conversationId.indexOf(':');
- if (idx != -1)
+ Object value = vb.getValue();
+ if (value==null)
{
- return conversationId.substring(idx + 1);
+ throw new IllegalStateException("conversation id evaluated to null: " + name);
}
else
{
- return conversationId;
+ //TODO: use a JSF converter!
+ return vb.getValue().toString();
}
- }*/
- else
- {
- return null;
}
- //}
- }
}
1.16 +1 -1 jboss-seam/src/main/org/jboss/seam/pages/Page.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: Page.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pages/Page.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- Page.java 8 Mar 2007 07:34:15 -0000 1.15
+++ Page.java 9 Mar 2007 02:14:15 -0000 1.16
@@ -199,7 +199,7 @@
// If no expression is configured, create a default one
if (restriction == null)
{
- Identity.instance().checkPermission( facesContext.getViewRoot().getViewId(), "render" );
+ Identity.instance().checkPermission( Pages.getViewId(facesContext), "render" );
}
else
{
1.4 +5 -0 jboss-seam/src/main/org/jboss/seam/pages/SyntheticConversationIdParameter.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: SyntheticConversationIdParameter.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pages/SyntheticConversationIdParameter.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- SyntheticConversationIdParameter.java 9 Mar 2007 00:17:51 -0000 1.3
+++ SyntheticConversationIdParameter.java 9 Mar 2007 02:14:15 -0000 1.4
@@ -27,6 +27,11 @@
return Id.nextId();
}
+ public String getConversationId()
+ {
+ return Id.nextId();
+ }
+
public String getRequestConversationId(Map parameters)
{
return Manager.getRequestParameterValue( parameters, getParameterName() );
More information about the jboss-cvs-commits
mailing list