Author: jkuhnert
Date: Sat Nov 18 17:45:34 2006
New Revision: 476682
URL: http://svn.apache.org/viewvc?view=rev&rev=476682
Log:
Made ResponseBuilder a seperate, injectable service. Shhh, don't tell howard
this wasn't here already.
Modified:
tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java
tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.globals.xml
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/RequestGlobals.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestGlobalsImpl.java
Modified:
tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java?view=diff&rev=476682&r1=476681&r2=476682
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java
(original)
+++
tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java
Sat Nov 18 17:45:34 2006
@@ -16,7 +16,6 @@
import java.util.Date;
import org.apache.log4j.Logger;
-import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.annotations.Component;
import org.apache.tapestry.annotations.EventListener;
import org.apache.tapestry.annotations.InjectObject;
@@ -27,9 +26,9 @@
import org.apache.tapestry.dojo.form.DropdownTimePicker;
import org.apache.tapestry.dojo.form.IAutocompleteModel;
import org.apache.tapestry.dojo.html.Dialog;
-import org.apache.tapestry.event.BrowserEvent;
import org.apache.tapestry.form.TextField;
import org.apache.tapestry.html.BasePage;
+import org.apache.tapestry.services.ResponseBuilder;
import org.apache.tapestry.timetracker.dao.ProjectDao;
import org.apache.tapestry.timetracker.dao.TaskDao;
import org.apache.tapestry.timetracker.model.Project;
@@ -82,6 +81,8 @@
@InjectObject("service:timetracker.dao.TaskDao")
public abstract TaskDao getTaskDao();
+ public abstract ResponseBuilder getBuilder();
+
/**
* Selection model for projects.
*
@@ -98,9 +99,9 @@
*/
@EventListener(events = "selectOption", targets = "projectChoose",
submitForm = "taskForm")
- public void projectSelected(IRequestCycle cycle, BrowserEvent event)
+ public void projectSelected()
{
- cycle.getResponseBuilder().updateComponent("projectDescription");
+ getBuilder().updateComponent("projectDescription");
}
public void showDialog()
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.globals.xml
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.globals.xml?view=diff&rev=476682&r1=476681&r2=476682
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.globals.xml
(original)
+++
tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.globals.xml
Sat Nov 18 17:45:34 2006
@@ -38,7 +38,15 @@
<invoke-factory service-id="hivemind.lib.ServicePropertyFactory">
<construct service-id="RequestGlobals" property="requestCycle"/>
- </invoke-factory>
+ </invoke-factory>
+ </service-point>
+
+ <service-point id="ResponseBuilder"
interface="org.apache.tapestry.services.ResponseBuilder" >
+ The response builder for the current request.
+
+ <invoke-factory service-id="hivemind.lib.ServicePropertyFactory">
+ <construct service-id="RequestGlobals" property="responseBuilder"/>
+ </invoke-factory>
</service-point>
<service-point id="HttpServletRequest"
interface="javax.servlet.http.HttpServletRequest">
@@ -131,5 +139,6 @@
<property name="applicationId"
object="service-property:ApplicationGlobals:activatorName"/>
<property name="context" object="service:WebContext"/>
<property name="requestCycle" object="service:IRequestCycle"/>
+ <property name="responseBuilder" object="service:ResponseBuilder" />
</contribution>
</module>
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/RequestGlobals.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/RequestGlobals.java?view=diff&rev=476682&r1=476681&r2=476682
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/RequestGlobals.java
(original)
+++
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/RequestGlobals.java
Sat Nov 18 17:45:34 2006
@@ -35,7 +35,9 @@
void store(WebRequest request, WebResponse response);
void store(IRequestCycle cycle);
-
+
+ void store(ResponseBuilder builder);
+
HttpServletRequest getRequest();
WebRequest getWebRequest();
@@ -45,4 +47,6 @@
WebResponse getWebResponse();
IRequestCycle getRequestCycle();
+
+ ResponseBuilder getResponseBuilder();
}
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java?view=diff&rev=476682&r1=476681&r2=476682
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java
(original)
+++
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java
Sat Nov 18 17:45:34 2006
@@ -82,7 +82,11 @@
_requestGlobals.store(cycle);
try {
-
cycle.setResponseBuilder(_responseDelegateFactory.getResponseBuilder(cycle));
+
+
_requestGlobals.store(_responseDelegateFactory.getResponseBuilder(cycle));
+
+ cycle.setResponseBuilder(_requestGlobals.getResponseBuilder());
+
} catch (IOException e) {
throw new ApplicationRuntimeException("Error creating response
builder.", e);
}
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestGlobalsImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestGlobalsImpl.java?view=diff&rev=476682&r1=476681&r2=476682
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestGlobalsImpl.java
(original)
+++
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/RequestGlobalsImpl.java
Sat Nov 18 17:45:34 2006
@@ -19,6 +19,7 @@
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.services.RequestGlobals;
+import org.apache.tapestry.services.ResponseBuilder;
import org.apache.tapestry.web.WebRequest;
import org.apache.tapestry.web.WebResponse;
@@ -41,6 +42,8 @@
private IRequestCycle _requestCycle;
+ private ResponseBuilder _responseBuilder;
+
public WebRequest getWebRequest()
{
return _webRequest;
@@ -81,5 +84,15 @@
public void store(IRequestCycle cycle)
{
_requestCycle = cycle;
+ }
+
+ public ResponseBuilder getResponseBuilder()
+ {
+ return _responseBuilder;
+ }
+
+ public void store(ResponseBuilder builder)
+ {
+ _responseBuilder = builder;
}
}