| <?xml version="1.0"?> |
| <!-- |
| Copyright 2005 The Apache Software Foundation |
| |
| Licensed 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. |
| --> |
| |
| <module id="tapestry.portlet.services" version="4.0.0" package="org.apache.tapestry.portlet"> |
| |
| Defines engine services used by Tapestry portlet support. |
| |
| <configuration-point id="FactoryServices" schema-id="tapestry.services.EngineServices"> |
| |
| Configuration point for the factory default services. Each contributed service |
| must have a unique name. |
| |
| </configuration-point> |
| |
| <contribution configuration-id="FactoryServices"> |
| <service name="home" object="service:Home"/> |
| <service name="action" object="service:tapestry.services.Action"/> |
| <service name="direct" object="service:tapestry.services.Direct"/> |
| <service name="page" object="service:tapestry.services.Page"/> |
| <service name="reset" object="service:tapestry.services.Reset"/> |
| <service name="restart" object="service:tapestry.services.Restart"/> |
| <service name="asset" object="service:PortletAsset"/> |
| <service name="external" object="service:tapestry.services.External"/> |
| <service name="exception" object="service:Exception"/> |
| |
| <!-- Special one used for handling Portal RenderRequests --> |
| |
| <service name="render" object="service:Render"/> |
| </contribution> |
| |
| <service-point id="Exception" interface="org.apache.tapestry.engine.IEngineService"> |
| |
| Renders a pre-generated exception, stored in the session. |
| |
| <invoke-factory> |
| <construct class="ExceptionService"> |
| <set-object property="request" value="infrastructure:request"/> |
| <set-object property="response" value="infrastructure:response"/> |
| <set-service property="globals" service-id="tapestry.portlet.PortletRequestGlobals"/> |
| </construct> |
| </invoke-factory> |
| |
| </service-point> |
| |
| <service-point id="PortletAsset" interface="org.apache.tapestry.engine.IEngineService"> |
| |
| Specially wired version of the asset service that routes through the application servlet |
| (rather than the portlet). |
| |
| <invoke-factory> |
| <construct class="org.apache.tapestry.asset.AssetService"> |
| <set-object property="exceptionReporter" value="infrastructure:requestExceptionReporter"/> |
| <!-- The big change: use the servlet LinkFactory, not the portlet LinkFactory. --> |
| <set-service property="linkFactory" service-id="tapestry.portlet.PortletAssetLinkFactory"/> |
| <set-service property="context" service-id="tapestry.globals.WebContext"/> |
| <set-object property="response" value="service:tapestry.globals.WebResponse"/> |
| <set-service property="digestSource" service-id="tapestry.asset.ResourceDigestSource"/> |
| <set-service property="unprotectedMatcher" service-id="tapestry.asset.UnprotectedResourceMatcher" /> |
| <event-listener service-id="tapestry.ResetEventHub"/> |
| </construct> |
| </invoke-factory> |
| </service-point> |
| |
| <service-point id="PortletRenderer" interface="PortletRenderer"> |
| |
| Service used to render a named page. |
| |
| <invoke-factory> |
| <construct class="PortletRendererImpl"> |
| <set-object property="markupWriterSource" value="infrastructure:markupWriterSource"/> |
| <set-object property="response" value="infrastructure:response"/> |
| <set-object property="assetFactory" value="infrastructure:assetFactory"/> |
| <set-object property="applicationId" value="infrastructure:applicationId"/> |
| </construct> |
| </invoke-factory> |
| </service-point> |
| |
| <service-point id="Render" interface="org.apache.tapestry.engine.IEngineService"> |
| |
| The single service that should be referenced by a Portlet render request. |
| |
| <invoke-factory> |
| <construct class="RenderService"> |
| <set-service property="portletRenderer" service-id="PortletRenderer"/> |
| <set-service property="request" service-id="tapestry.portlet.PortletRequest"/> |
| <set-service property="pageResolver" service-id="tapestry.portlet.resolver.PortletPageResolver"/> |
| </construct> |
| </invoke-factory> |
| </service-point> |
| |
| <service-point id="Home" interface="org.apache.tapestry.engine.IEngineService"> |
| <invoke-factory> |
| <construct class="PortletHomeService"> |
| <set-object property="responseRenderer" value="infrastructure:responseRenderer"/> |
| <set-object property="linkFactory" value="infrastructure:linkFactory"/> |
| <set-service property="requestGlobals" service-id="tapestry.portlet.PortletRequestGlobals"/> |
| <set-service property="portletRenderer" service-id="PortletRenderer"/> |
| <set-service property="pageResolver" service-id="tapestry.portlet.resolver.PortletPageResolver"/> |
| </construct> |
| </invoke-factory> |
| </service-point> |
| |
| <service-point id="ResponseRenderer" interface="org.apache.tapestry.services.ResponseRenderer"> |
| |
| Portal specific implementation of ResponseRender that builds a |
| Portlet Render URL that references the render engine service. |
| |
| <invoke-factory> |
| <construct class="PortletResponseRenderer"> |
| <set-service property="request" service-id="tapestry.portlet.PortletRequest"/> |
| <set-service property="response" service-id="tapestry.portlet.ActionResponse"/> |
| </construct> |
| </invoke-factory> |
| </service-point> |
| |
| <contribution configuration-id="tapestry.Infrastructure"> |
| <property name="responseRenderer" mode="portlet" object="service:ResponseRenderer"/> |
| </contribution> |
| |
| <contribution configuration-id="hivemind.FactoryDefaults"> |
| <default symbol="org.apache.tapestry.portlet.home-page" value="View"/> |
| </contribution> |
| </module> |